?
public class A1 {
public static class ListNode{
int val;
ListNode next;
public ListNode(int val,ListNode next){// 这个决定psvm链表val和next的指
this.val=val;
this.next=next;
}
}
//
// 迭代方法
public static ListNode iterate(ListNode head){
ListNode pre=null,next;
ListNode cure = head;
while(cure!=null)
{
next=cure.next;
cure.next=pre;
pre=cure;
cure=next;
}
return pre;
}
public static ListNode di(ListNode head) {
if(head==null|| head.next==null)//为空链表//为1的时候
{
return head;
}
ListNode new_head=di(head.next);
head.next.next=head;
head.next=null;
return new_head;
}
public static void main(String[] args) {
ListNode node5=new ListNode(5,null);
ListNode node4=new ListNode(4,node5);
ListNode node3=new ListNode(3,node4);
ListNode node2=new ListNode(2,node3);
ListNode node1=new ListNode(1,node2);
// ListNode pre= iterate(node1);
ListNode pre=di(node1);
System.out.println(pre);
}
}
|