import java.util.ArrayList;
import java.util.List;
public class ListMerge {
/**
* 两个有序list的合并
*
* @param args
*/
public static void main(String[] args) {
List<Integer> la = new ArrayList<Integer>();
la.add(1);
la.add(4);
la.add(5);
la.add(7);
la.add(9);
List<Integer> lb = new ArrayList<Integer>();
lb.add(2);
lb.add(6);
lb.add(8);
lb.add(10);
lb.add(12);
List<Integer> lc = new ArrayList<Integer>();
int i = 0;
int j = 0;
while (i < la.size() && j < lb.size()) {// 归并
if (la.get(i) <= lb.get(j)) {
lc.add(la.get(i));
i++;
} else {
lc.add(lb.get(j));
j++;
}
}
while (i < la.size()) {// la未空,插入la的剩余元素
lc.add(la.get(i));
i++;
}
while (j < lb.size()) {// lb未空,插入lb的剩余元素
lc.add(lb.get(j));
j++;
}
System.out.println(lc);
}
}
有序列表的归并算法
最新推荐文章于 2019-04-16 09:50:04 发布