【发布时间】:2013-08-20 14:12:23
【问题描述】:
我们得到了一个 API -
removeAndAppend(val)
//Removes val and appends it to the given collection
我们需要使用这个 API 对集合进行排序..
我知道我可以通过 -
for i <- N to 1
extract max //in O(n)
removeAndAppend.. //Consider this O(1)
这是二次的..
问题是我能做得比这更好吗..?
编辑:我们可以对集合执行 READ 操作,例如 - compare(val1, val2)
【问题讨论】:
-
这是什么 API?什么语言?还是这个伪代码?
-
我可以想象一个链表可以让你在恒定时间内删除AndAppen..我不认为语言/伪代码在这里很重要..如果我错了请纠正我
-
看看this question 关于Java 中的插入和删除。听起来像您要找的东西吗?
标签: performance algorithm