【发布时间】:2021-07-06 23:46:30
【问题描述】:
我正在尝试按排序顺序合并两个列表,我想知道合并它们的最快方法是什么。 目前,我的算法基本上是(忽略语法):
merge(a, b){
newlist = new Arraylist()
while(!a.isEmpty() && !b.isEmpty()){
if(a.get(0) > b.get(0))
newlist.add(a.remove(0))
else
newlist.add(b.remove(0))
}
newlist.addAll(a)
newlist.addAll(b)
return newlist
}
有没有更快的方法来进行这种合并?我试图尽可能减少我的运行时间,因为这个函数被调用了数千次,ArrayLists 非常大。
【问题讨论】: