//データ 配列 = [5,9,8,3,1,6,4] //目的 配列を昇順に整列させる //処理 left = 0 right = 要素の個数-1 クイックソート(配列, left, right):   if left<right: pivot = left〜rightのどれか pivotを基点に左右に分ける クイックソート(配列, left, pivot-1) クイックソート(配列, pivot+1, right) クイックソート関数(配列, 左端, 右端): if 配列の要素数 <= 1: return 配列 else: ピポット = 配列の要素からランダム ピポッドを基点に左右に分ける left = ピポット以下の配列の要素すべて right = ピポットより大きい配列の要素すべて // 左右個別にソートする。 左側 = クイックソート関数(left) 右側 = クイックソート関数(right) return 左側 + [ピポット] + 右側

画面クリックで説明





他のアルゴリズムの解説も見たい方へ