Python-插入排序在numpy的?

在numpy中某处有插入排序吗?我的数组需要一个argsort,但是内置的quick,merge和heap不适合几乎排序的数组.

解决方法:

numpy 1.17.0 release notes

Timsort has been implemented and is now used in place of mergesort. […] Timsort features improved performace on already or nearly sorted data and performs like mergesort on random data.

截至撰写本文时,NumPy 1.17.0尚未发布,但在发布时,您可以通过在sort调用中指定kind =’stable’或kind =’mergesort’来选择Timsort:

sorted = numpy.sort(unsorted, kind='stable')

这满足了您想要使用插入排序的“快速处理几乎排序的数据”角色,同时还利用了输入中的其他顺序,并且比插入排序具有更好的最坏情况行为.

较早的numpy版本do not have a fast method for nearly sorted data.

上一篇:selenium库的webdriver.phantomjs()报错


下一篇:时间序列中的峰值计数