Avatar notebook default
32篇文章 · 14318字 · 1人关注
  • 二叉树的遍历

    前中后序的递归实现 前中后序的非递归标准实现 总结 整体的思路是这样的: 指针p指向root,创建栈 当栈不为空或p有效时,循环:沿着根节点的左...

  • Resize,w 360,h 240
    二分查找(2)

    最左原位 原位指的是arr[m]==m的位置。找出一个有序单调不减数组中最左原位,若无返回-1. 思路: 对于有序数组来说,直接可以否定两种情况...

  • 二分查找

    原理并不复杂,[low,high]构成了潜在区间,如果中值不等于目标,则减半对应的区间。有一个问题:为什么循环条件是小于等于,而不是小于?因为假...

  • Resize,w 360,h 240
    链表求交

    求两个链表是否有交点和交点位置。先判断是否有环。如果两者一个有一个没有,一定没有交点。 两者无环 思路很简单:先求两者长度,然后较大者先从头指针...

  • 链表判环

    如何判断一个单链表是否有环?有环的话返回进入环的第一个节点的地址,无环的话返回空。如果链表的长度为N,请做到时间复杂度O(N),额外空间复杂度O...

  • 复杂链表的复制练习题

    输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)。 思路 遍历该链表,每一个结点后插入一...

  • 链表求中点以及回文检测

    以前见到一个题目,求链表的倒数第K个结点。实现方式很巧妙: 让一个指针先走K步 然后另一个指针从头开始,两者同时开始走。 前指针走完了,那后指针...

  • 链表入指定值清除

    现在有一个单链表。链表中每个节点保存一个整数,再给定一个值val,把所有等于val的节点删掉。 给定一个单链表的头结点head,同时给定一个值v...

  • 反转链表

    过程 迭代过程中需要三个指针: p用来指向当前待处理的结点 lastp 指向上一个处理完的结点,初始为空。这样的话,旧链表首结点就是新链表尾结点...

文集作者