1. 206. 反转链表
https://leetcode-cn.com/problems/reverse-linked-list/
https://leetcode-cn.com/problems/reverse-linked-list/
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func reverseList(head *ListNode) *ListNode {
if head == nil || head.Next == nil{
return head
}
var pre *ListNode
for head!=nil{
next := head.Next
head.Next = pre
pre = head
head = next
}
return pre
}
func reverseList(head *ListNode) *ListNode {
if head == nil || head.Next == nil{
return head
}
var pre *ListNode
cur := head
for cur!=nil {
cur.Next, pre, cur = pre, cur, cur.Next
}
return pre
}
//递归
func reverseList(head *ListNode) *ListNode {
if head == nil || head.Next == nil{
return head
}
tmp := head
head = reverseList(tmp.Next)
tmp.Next.Next=tmp
tmp.Next=nil
return head
}