题目:输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是按照递增排序的
思路:递归可解
public class Merge {
public static Node merge(Node headA,Node headB){
if(headA==null)
return headB;
else if(headB==null)
return headA;
else if(headA.getData()<=headB.getData()){
headA.setNext(merge(headA.getNext(),headB));
return headA;
}else{
headB.setNext(merge(headA,headB.getNext()));
return headB;
}
}
}
class Node{
private Integer data;
private Node next;
public Integer getData() {
return data;
}
public void setData(Integer data) {
this.data = data;
}
public Node getNext() {
return next;
}
public void setNext(Node next) {
this.next = next;
}
public Node() {
super();
}
public Node(Integer data) {
this.data = data;
next = null;
}
@Override
public String toString() {
return "Node [data=" + data + "]";
}
}