ホームページ >バックエンド開発 >Python チュートリアル >Python を使用して基数ソート アルゴリズムの原理を実装する例
基数ソート アルゴリズムはバケット ソート アルゴリズムの一種で、同じ位置に基づいて値をグループにソートします。少しわかりにくいかもしれませんが、基数ソート アルゴリズムの原理を示す次の例を見てください。
図に示すように、配列 [121,432,564,23,1,45,788] を指定し、基数で配列をソートします。
##最初に 1 桁の値を並べ替え、次に 10 桁の値を並べ替え、最後に 100 桁の値を並べ替えます。数値を入力し、最後にソートされた結果を出力します。配列は [001,023,045,121,432,564,788]基数ソート アルゴリズムを実装する Python コードです。def countingSort(array, place): size = len(array) output = [0] * size count = [0] * 10 for i in range(0, size): index = array[i] // place count[index % 10] += 1 for i in range(1, 10): count[i] += count[i - 1] i = size - 1 while i >= 0: index = array[i] // place output[count[index % 10] - 1] = array[i] count[index % 10] -= 1 i -= 1 for i in range(0, size): array[i] = output[i] def radixSort(array): # Get maximum element max_element = max(array) place = 1 while max_element // place > 0: countingSort(array, place) place *= 10 data = [121, 432, 564, 23, 1, 45, 788] radixSort(data) print(data)
以上がPython を使用して基数ソート アルゴリズムの原理を実装する例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。