ICode9

精准搜索请尝试: 精确搜索
  • 链表常见(典型)题目(一)快慢指针2020-11-30 22:04:09

    此处的快慢指的是每次移动的步数 比如定义一个slow和fast指针都指向第一个节点: ListNode *slow = head; ListNode *fast = head; slow每次走一步,fast每次走两步: while (fast != nullptr) { slow = slow->next; fast = fast->next; }

  • 快慢指针和链表的环2020-09-25 15:34:26

    快慢指针和链表的环 相信用快慢指针确定链表是否有环大家并不陌生,但是如何确定这个链表环起点的位置是一个问题。 为了深入了解,我画了个图方便理解。 下图表示了快慢指针的流程,现在假设(有环): 快慢指针都从起点B开始,快慢指针最终相交于点C,环的起点位于S。 我们假设慢指针走了 k 的距

  • 快慢指针2020-05-07 16:56:43

    快慢指针是链表中比较常见的一个技巧,因为链表(listnode)的结构特点,不能直接访问到第n个元素,而用一个快指针和一个慢指针可以将两次或者多次遍历降为一次遍历。 基本用法上:   快指针(fast)每次移动两个节点,慢指针(slow)每次移动一个,快指针不能移动时,慢指针就走了一半的距离。 常用于:

  • 快慢指针2020-01-22 15:39:08

    学习体会 例题:快速找到未知长度的单链表的中间节点? 解法一(暴击法):遍历一遍单链表,得到单链表的长度,再遍历一半即可。O(n+n1/2) 解法二(快慢指针):设两个指针,一个指针的速度是另一个指针的两倍(一个是“1”,一个是“2”)。 点赞 收藏 分享 文章举报 K

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有