numpy 関数を使用して、マージソートでマージのようなことを実行する方法はありますか?
マージのようないくつかの関数:
a = np.array([1,3,5])
b = np.array([2,4,6])
c = merge(a, b) # c == np.array([1,2,3,4,5,6])
numpyのおかげで大きなデータでも高いパフォーマンスが得られれば良いのですが
ベストアンサー1
使用できます
from numpy import concatenate, sort
c = concatenate((a,b))
c.sort(kind='mergesort')
残念ながら、 のように Python 拡張機能として独自のソート関数を作成しない限り、これより優れた方法はないと思いますcython
。
見るこれ同様の問題に関する質問ですが、マージされた配列内の一意の値のみが保持されます。そこにあるベンチマークとコメントも洞察に富んでいます。