Leetcode 142.环形链表II Posted on 2019-02-22 | 142.环形链表II题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 说明:不允许修改给定的链表。 1234567891 ... Read more »
Leetcode 141.环形链表 Posted on 2019-02-22 | 114.环形链表题目给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。12345示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链 ... Read more »
剑指offer 两个链表的第一个公共结点 Posted on 2019-02-22 | 两个链表的第一个公共结点题目Leetcode 160.相交链表输入两个链表,找出它们的第一个公共结点。 方法方法1:link A+link B12345678910111213# -*- coding:utf-8 -*-# class ListNode:# def __init__(self ... Read more »
Leetcode 160.相交链表 Posted on 2019-02-22 | 160.相交链表方法 相交链表的相交结点之后是一样的,具有相同的结点 链表A+B和链表B+A据哟相同的尾部,如 A=1,2,3B=6,5,2,3 A+B=1,2,3,6,5,2,3B+A=6,5,2,3,1,2,3 同时实现A+B和B+A,一旦当前链表遍历结束,转到另一链表的head 但是,你还 ... Read more »
剑指offer 复杂链表的复制 Posted on 2019-02-22 | 复杂链表的复制题目Leetcode 138.复制带随机指针的链表 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 方法方法1:不采用 ... Read more »
Leetcode 138.复制带随机指针的链表 Posted on 2019-02-22 | 138.复制带随机指针的链表题目给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。 要求返回这个链表的深度拷贝。 方法方法1:不采用字典12345678910111213141516171819202122232425262728293031323334353 ... Read more »
Leetcode 21.合并两个有序链表 Posted on 2019-02-22 | 21.合并两个有序链表题目将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。1234示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4 方法方法11234567891011 ... Read more »
剑指offer 合并两个排序链表 Posted on 2019-02-22 | 合并两个排序链表题目21.合并两个有序链表 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 方法方法1:迭代123456789101112131415161718192021222324252627# -*- coding:utf-8 -*-# clas ... Read more »
剑指offer 从尾到头打印链表 Posted on 2019-02-22 | 从尾到头打印链表题目类似于Leetcode 206.反转链表输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。 方法方法1:按顺序访问链表,反转结果123456789101112131415161718192021# -*- coding:utf-8 -*-# class ListNo ... Read more »
Leetcode 206.反转链表 Posted on 2019-02-22 | 206.反转链表题目反转一个单链表。1234示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL 进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 方法方法1:迭代12345678 ... Read more »