标签 leetcode 中的文章

Leetcode234解答

/** * Definition for singly-linked list. * type ListNode struct { * Val int * Next *ListNode * } */ func isPalindrome(head *ListNode) bool { if head == nil || head.Next == nil { return true } // 找到链表的中点 slow, fast := head, head for fast.Next != nil && fast.Next.Next != nil { slow = slow.Next fast = fast.Next.Next } // 反转后半部分链表 secondHalf := reverseList(slow.Next) // 比较前半部分和反转后的后半部分链表 p1, p2 := head, secondHalf for p2 != nil { if p1.Val != p2.Val { return false } p1 = p1.Next p2 = p2.Next } // 恢复链表 slow.Next = reverseList(secondHalf) return true } // 反转链表 func reverseList(head *ListNode)……

阅读全文

Letcode 02

题目 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例 1: 输入:l1 = [2,4,3], l2 = [5,6,4] 输出:[7,0,8] 解释:342 + 465 =……

阅读全文