myarray = empty
n = 10000
range = 1000
loop 1 to n {
x = random number between 1 and range
if x not in myarray {
add x to myarray
sort myarray
do something
}
}
Run Code Online (Sandbox Code Playgroud)
我考虑过插入排序,但这需要元素转移.并且快速排序在已经排序的列表上会很糟糕.我能想到的最好的是Min Heap.是否有一些鲜为人知的排序算法对这种情况更好?它是在C++的STL中吗?