两个有序集合的合并


import java.util.ArrayList;
import java.util.List;

public class SortList {

public static List<Integer> sort(List<Integer> list1 , List<Integer> list2){
List<Integer> list = new ArrayList<Integer>();
int i = 0 , j = 0;
while(i < list1.size() && j < list2.size()){
if(list1.get(i) < list2.get(j)){
list.add(list1.get(i++));
}else{
list.add(list2.get(j++));
}
}
while(i < list1.size()){
list.add(list1.get(i++));
}
while(j < list2.size()){
list.add(list2.get(j++));
}
return list;
}

public static void main(String[] args) {
List<Integer> list1 = new ArrayList<Integer>();
list1.add(1);
list1.add(2);
list1.add(4);
list1.add(7);
list1.add(9);
list1.add(10);
list1.add(13);
list1.add(16);
list1.add(19);

List<Integer> list2 = new ArrayList<Integer>();
list2.add(0);
list2.add(3);
list2.add(5);
list2.add(8);
list2.add(11);
list2.add(17);
list2.add(25);
list2.add(30);

System.out.println(SortList.sort(list1, list2));
}

}

原文地址:https://www.cnblogs.com/shoshana-kong/p/9581509.html