組み込みの並べ替え方法
Python には、
sorted()
および
sort()
という組み込みのクイック ソート関数があります。
Timsort
。
組み込みの並べ替え関数の使用を検討してください。
1) 昇順でソートされた配列
A
に一致する新しい配列
B
を取得します (デフォルトでは、昇順でソートされます)。
B = ソート済み(A)
2) 降順にソートされた配列 A
に一致する新しい配列 B
を取得します。
B = ソート済み(A, reverse = True)
reverse - 英語の「reverse」を翻訳したもの。
3) 非標準の並べ替えを実行するには、並べ替えキー (引数 key
) が必要です。
数値の下一桁で昇順に並べ替える場合は数値の下一桁がキーとなります
。
これを行うには、必要なキー (この場合は番号の最後の桁) を返す関数を作成する必要があります。
# ソートキーを返す関数
# - 番号の最後の桁
def lastDigit(n):
n%10を返します
B = ソート済み(A, キー = lastDigit)
プレ>
4) 名前なしで ラムダ関数 - 関数を使用します。
簡単なので別の関数を作成したくない場合は、いわゆるラムダ関数を使用できます。このような関数は、key
パラメータで呼び出されたときに直接記述されます。
B = ソート(A, キー = ラムダ x: x % 10)
5) 配列を「その場で」並べ替える必要がある場合(追加の配列を割り当てずに) sort()
メソッドを使用することをお勧めします。
たとえば、配列 A
を最後の桁で降順に並べ替えると、次のようになります。
A.sort(key = lambda x: x % 10, reverse = True)