Swap adjacent elements
Coddyの「バブルソート」コースのレッスン 3/11。
バブルソートがどのように機能するかについて説明しました。リストを反復処理し、順序が間違っている要素を入れ替える必要があります。リストがソートされるまで、このプロセスを繰り返す必要があります。
パスがどのように機能するかをもう一度復習しましょう。リストを反復処理し、隣接する要素を比較して入れ替える必要があります。
4つの要素を持つリスト
[3,4,2,1]をソートする必要があります。最初の2つの要素を比較します
[3,4,2,1] -> [3,4,2,1] (すでにソートされているため、変更はありません)
次の2つの要素を比較します
[3,4,2,1] -> [3,2,4,1] (要素を入れ替えてソートされた順序にします)
次の2つの要素を比較します
[3,2,4,1] -> [3,2,1,4] (要素を入れ替えてソートされた順序にします)
前回のチャレンジでは、2つの要素を入れ替える方法を学びました。ここで、上述のプロセスを実装するチャレンジに挑戦してみましょう。
チャレンジ
簡単配列を受け取る swap_list という名前の関数を作成してください。配列を反復処理し、隣接する要素を比較して入れ替え、新しいリストを返します。
自分で試してみよう
#include <stdio.h>
#include <stdlib.h>
int* swap_list(int* arr, int arr_size, int* returnSize) {
// ここにコードを記述してください
*returnSize = arr_size;
return arr;
}
バブルソートのすべてのレッスン
1Basics of Bubble Sort
IntroductionWorking of the Bubble SortSwap adjacent elementsBubble Sort Algorithm