質問

何がインターネットには想像もつかなソートの滑らかな2次元に配列?

入力は小さなものを作ろう:

  • 約60 80ピクセル
  • シングルチャンネル
  • シングルまたは倍精度浮動
  • 行主要な貯蔵、シーケンシャル-メモリ
  • 値を混合してい看板
  • 区分的に滑らかな"では、地域のための10のピクセル幅

出力フラット(約4800値の配列をソート値を、指数はその配列になります。

役に立ちましたか?

解決 3

私は平らなアレイ上でnumpyののソート・ルーチンを使用して、いくつかの画像に迅速かつ汚いベンチマークを打ち出しました。これは、数百枚のランダムな画像や人間の顔の数百の画像で平均化されます。両方が単精度である。

On random images...
quicksort took 0.000153 seconds per image.
mergesort took 0.000170 seconds per image.
heapsort took 0.000241 seconds per image.
On real images...
quicksort took 0.000136 seconds per image.
mergesort took 0.000143 seconds per image.
heapsort took 0.000230 seconds per image.

すべてのアルゴリズムは、特にクイックソート、既存の半順序の恩恵を受けているようです。私は事前にソート行、ああを試すことができないので、numpyのは、ソートされたリストのマージ機能を持っていないようです。

他のヒント

思Timsort勝つことがらを活かした"走る"のデータです。

Quicksortは通常速リスクがとございますのでご注意下さ最悪のシナリオに対する例えば一部のバージョンのquickshortはO(n^2)が指定されたときに、すでにソートされ入力します。かかりませんがとてもフレンドリーだと感じだったので、間違ったタイプの勾配に満ちたイメージです。.....

ここで少しの狂しますがもしてみZ順序パスWikipediaリンク)によって使いやすさにこだわり隣接する同様の色もいます。

私はその場でクイックソートで始まると思います。浮動小数点の比較は、ほとんどのプロセッサ(確かにはるかに高速マージソートのために必要な配分よりも)に高速です。

timsortがありますが、私はそれが遅い比較とアプリケーションのために意図されていることがいくつかの場所で見てきました。どうやらも、それを実装する気にしないことに決めたnumpyの開発者:

http://mail.scipy.org/pipermail /scipy-dev/2009-May/011929.htmlする

一つは、個々の行をマージして、ソートされた行をマージすることができます。

であろうが、少なくともレバレッジ2次元アレイ、単調なランは、典型的には、アレイのエッジで開始及び停止すること、すなわち、実際の特殊構造の一部となります。また、並列処理の別のカップルのレベルを公開します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top