List

List

  • LeetCode 328奇偶链表

    LeetCode328奇偶链表题目:给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。请尝试使用原地算法完成。你的算法的空间复杂度应为O(1),时间复杂度应为O(nodes),nodes为节点总数。示例1:输入:1

    查看全文
  • LeetCode 234. 回文链表

    LeetCode 234. 回文链表题目:请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true双指针解法首先使用双指针判断中间的指针值在哪,然后将后半段的指针进行反转,再与前半段的指针值进行比对,如果

    查看全文
  • LeetCode 203. 移除链表元素

    LeetCode 203. 移除链表元素题目:删除链表中等于给定值 *val* 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5示例:输入: 1->2->3-&

    查看全文
  • LeetCode 160. 相交链表

    LeetCode160.相交链表题目:编写一个程序,找到两个单链表相交的起始节点。哈希表法遍历链表L1,将所有的结点存到HashSet中,然后遍历L2,判断是否在L1中,如果存在,就认为是有相交结点,否则认为没有相交publicListNodegetIntersectionNode2(ListNod

    查看全文
  • LeetCode21 合并两个有序链表

    LeetCode21合并两个有序链表题目:将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4,1->3->4输出:1->1->2->3->4->4来源:力扣(LeetCode)

    查看全文
  • LeetCode 2. 两数相加

    LeetCode链表:2.两数相加给出两个 非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字0之外,这两个数都不会以0 开头。示例:输入:(2

    查看全文
  • 链表双指针法

    链表中的经典问题就是链表中是否存在环,存在环,并且求出环的入口节点在哪,链表的中间节点是哪一个.链表中是否存在环这道题也有两个解法,用set存储判断法,快慢指针法set存储判断还是先来简单版本的,遍历链表,将出现过的节点都放到set中,如果后面有出现过,那就证明这个是有环的,如果循环到最后也没有出现

    查看全文
  • 单链表的反转

    单链表的反转一般单链表反转有三种方法链表转为数组反转后再转为链表递归反转三指针反转链表和节点代码publicclassSinglyLinkedList{/***head指针*/privateNodehead=null;publicSinglyLinkedList(){head=newNode();}

    查看全文
  • 链表

    线性表的定义线性表:由同类型数据元素构成有序序列的线性结构1.表中元素个数称为线性表的长度2.线性表没有元素时,称为空表3.表的起始位置称为表头,表结束位置称为表尾线性表的链式存储实现方式(链表)单链表单链表中的每个结点不仅包含值,还包含链接到下一个结点的引用字段。通过这种方式,单链表将所有结点按顺

    查看全文