[プログラマレベル1]の回答を文字列降順で並べ替える
に質問
文字列sに現れる文字を大から小まで順番に並べ替え、新しい文字列を返す関数と解決策を完了します.
sは英語の大文字と小文字のみからなり、大文字は小文字より小さいと見なされます.
せいげんじょうけん
🖨️ I/O例
💡 に答える
class Solution {
// swap 함수
void swap(char[] data, int a, int b) {
char tmp = data[a];
data[a] = data[b];
data[b] = tmp;
}
// 내림차순 정렬(퀵소트) 함수
void quickSort(char[] data, int l, int r) {
int left = l;
int right = r;
int pivot = data[(l + r) / 2];
do {
while(data[left] > pivot)
left++;
while(data[right] < pivot)
right--;
if(left <= right) {
swap(data, left, right);
left++;
right--;
}
} while (left <= right);
if(l < right)
quickSort(data, l, right);
if(r > left)
quickSort(data, left, r);
}
public String solution(String s) {
char[] arr = s.toCharArray();
quickSort(arr, 0, arr.length - 1);
return new String(arr);
}
}
📊 精度テスト結果
✏️ comment
char[] arr = s.toCharArray();
->文字列を文字配列に変換するreturn new String(arr);
->文字配列を文字列に変更します.Reference
この問題について([プログラマレベル1]の回答を文字列降順で並べ替える), 我々は、より多くの情報をここで見つけました https://velog.io/@yuuuzzzin/프로그래머스-Level-1-문자열-내림차순으로-배치하기-문제-풀이テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol