私はC++を初めて使用しているので、文字列をbubblesortを使用して昇順で表示する必要があります。私はそれにさまざまな文字列を持つデータファイルを持っています。これらの値を配列に格納しました。私がテキストブックからバソソルコードを試したとき、その言葉はこのようにソートされました。C++で文字列を使ってbubblesortを実行する方法は?
これを正しく実装するにはどうすればよいですか?それはおそらく私が紛失している単純なものです。ありがとう。
私はこれがなぜ起こったかわからないが、ここで私はバブルソートのために使用していたコードです。
void sortListWords(string list[], int count) {
int temp;
for (int i = 0; i < count - 1; i++)
for (int j = 0; j < count - (i + 1); j++)
if (list[j] > list[j + 1]) {
temp = list[j];
list[j] = list[j + 1];
list[j + 1] = temp;
}
}
int main(){
// call sorting function
// words are loaded from data file
sortListWords(wordListing, size);
// print array to screen
for(int i=0; i<size; i++)
cout << wordListing[i];
return 0;
}
string temp;
へ:出力は次のとおりです。
は最後に、私は(テスト用)あなたの
main
関数に最初の2行を追加しました辞書順でソートされていますか?また、 'size'を定義する場所を明確にしてください。 –'std :: string'の値を入れ替えるために' int'一時変数を使用しているので、これがどのようにコンパイルされるのかわかりません。 –
これは実質的にバブル型の整数と同じコードです。あなたは整数の配列をバブルソートするコードを書くことができますか?もしそうなら、唯一の違いは使用されているタイプでしょう - それ以外のものは同じままです。 – PaulMcKenzie