算法中类的实现请见:http://my.oschina.net/u/181847/blog/42593
//有序链表合并
//方案如下:每次去除listSecond中的第一个节点,把这个节点插入到
//listFirst中相应的位置 ,当插入完毕后删除这个节点,然后进行下一轮
//插值,如此循环,知道listSecond为空
//创建两个链表并初始化
List<int>listFirst;
List<int>listSecond;
listFirst.AddTail(1);
listFirst.AddTail(3);
listFirst.AddTail(5);
listFirst.AddTail(8);
listFirst.AddTail(10);
listSecond.AddTail(0);
listSecond.AddTail(3);
listSecond.AddTail(4);
listSecond.AddTail(6);
listSecond.AddTail(11);
listSecond.AddTail(18);
while(listSecond.GetCount()!=0){
int indexFirst=0;
while(listSecond.GetAt(0)>listFirst.GetAt(indexFirst)){
++indexFirst;
if(indexFirst==listFirst.GetCount()){
break;
}
}
if(indexFirst==listFirst.GetCount()){
listFirst.AddTail(listSecond.GetAt(0));
listSecond.RemoveAt(0);
}
else{
listFirst.InsertAt(indexFirst,listSecond.GetAt(0));
listSecond.RemoveAt(0);
}
}