Pseudo Code
Coddyの「クイックソート - DSAシリーズ」コースのレッスン 4/9。
quickSort(array):
if length(array) <= 1:
return array
pivot = last element of array
less = elements (except pivot) that are < pivot
rest = elements (except pivot) that are >= pivot
return quickSort(less) + [pivot] + quickSort(rest)このコードがどのように考え方に対応しているか:
- pivot は、すべての要素と比較するための基準となる要素です。ここでは常に最後の要素になります。
- less は pivot より小さいすべての要素を集め、rest はそれ以外の要素を集めます。
- less と rest を再帰的にソートし、その間に pivot を配置することで、完全にソートされた配列が得られます。これは、less のすべての要素は pivot の前に配置されるべきであり、rest のすべての要素は pivot の後に配置されるべきだからです。
自分で試してみよう
このレッスンにはコードチャレンジは含まれていません。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
クイックソート - DSAシリーズのすべてのレッスン
2The Algorithm
How it works?Pseudo CodeImplementation (Part 1)Implementation (Part 2)