2011-01-11 14 views
0

私はちょうど公式Lua documentation on Table.sortを読んで、それが言うことに気づいた。Lua table.sortメソッドはいつ安定しますか?

を「[Table.sort]アルゴリズムは安定していないである。つまり、与えられた順序で等しいと見なさ要素は、それらの相対的な位置が変更された可能性があります並べ替えで。 "

Table.sortはLuaで安定しますか?

+1

いいえ、並べ替えは安定するためのものです。それは意識的な選択であり、潜在的なパフォーマンス/利益のトレードオフです。 [sorting in wikipedia](http://en.wikipedia.org/wiki/Sorting_algorithm)を参照してください。 –

+1

私はLuaを使用しませんが、安定したソートが必要な場合は、単純にすべての要素に別のパラメータの位置を追加し、並べ替えを行うことができます。 – Marii

+1

注:Luaはa)シンプルさとb)スピードのために設計された言語です。複雑さとシンプルさの間にトレードオフがあるときはいつでも、Luaが後者を選んだ良いお金を賭けることができます。 – Amber

答えて

1

安定したソートアルゴリズムは、(処理能力の面で)不安定なソートよりも若干高価です。ほとんどのアプリケーションでは、不安定なソートが完全に適切です。

安定した並べ替えをLuaに導入する具体的な計画がない限り、ソート機能はそのままであると思います。

6

これは目的ではなく、パフォーマンスに最適です。

本当に安定したものが必要な場合は、自分で作成してください。

9

私はわからないんだけど、私はあなたが2つの完全に異なるものまで混合していると思う:別名(Luaの参照に意味する)

Stability of a sorting algorithm

ソフトウェアの安定性を。 "バグフリーネス"。

関連する問題