AcWing 35. 反转链表
原题链接
简单
作者:
Zh1995
,
2019-08-11 15:07:37
,
所有人可见
,
阅读 772
class Solution {
public static void swap(ArrayList<Integer> arr,int i,int j)
{
int temp=arr.get(i);
arr.set(i,arr.get(j));
arr.set(j,temp);
}
public static void reverse(ArrayList<Integer> arr)
{
for(int i=0;i<arr.size()/2;i++)
swap(arr,i,arr.size()-1-i);
}
public ListNode reverseList(ListNode head) {
ArrayList<Integer> arr=new ArrayList<Integer>();
while(head!=null)
{
arr.add(head.val);
head=head.next;
}
reverse(arr);
ListNode newHead=new ListNode(10010);
ListNode p=newHead;
for(int i=0;i<arr.size();i++)
{
ListNode cur=new ListNode(arr.get(i));
p.next=cur;
p=p.next;
}
newHead=newHead.next;
return newHead;
}
}