1.题目描述:
反转一个单链表。
2.解题思路及代码:
迭代法
1 /** 2 * Definition for singly-linked list. 3 * public class ListNode { 4 * int val; 5 * ListNode next; 6 * ListNode(int x) { val = x; } 7 * } 8 */ 9 class Solution { 10 public ListNode reverseList(ListNode head) { 11 if(head==null) 12 return null; 13 ListNode pre=null; 14 ListNode cur=head; 15 ListNode tmp=null; 16 while(cur.next!=null){ 17 tmp=cur.next; 18 cur.next=pre; 19 pre=cur; 20 cur=tmp; 21 } 22 cur.next=pre; 23 return cur; 24 } 25 }