剑指offer
顾大仙1111
这个作者很懒,什么都没留下…
展开
-
剑指Offer 二分查找
11原创 2022-06-11 13:58:39 · 73 阅读 · 0 评论 -
剑指offer 树
11原创 2022-06-01 21:10:25 · 131 阅读 · 0 评论 -
剑指offer 队列
二叉树中每层的最大值 思路:1个队列实现:需要借用一个current和next,current用来记录当层还未处理的节点数,next表示下一层的节点数。 2个队列实现,queue1存的是当前层即要处理的节点,queue2用来存下一层的节点,当前层遍历完后把queue2赋值给queue1,queue2重置 ...原创 2022-05-23 21:42:52 · 112 阅读 · 0 评论 -
剑指offer 栈
后缀表达式 思路:遍历数组,将一个个数字加入栈中,当遇到运算符号时,取出栈顶两个字符,并做运算,把运算结果放回栈中,知道结束。 小行星碰撞 思路: 分为 栈顶>0和栈顶<0 栈顶>0时分为栈顶==-as pop、栈顶<-as、栈顶>-as 1. 只要 栈为空 || as>0 || 栈顶<0. 入栈 2. 栈非空 && as<0 && 栈顶==-as ...原创 2022-05-05 23:35:45 · 169 阅读 · 0 评论 -
剑指offer链表
删除倒数第k个节点 思路:两指针一前一后,前指针先向前移动k个位置,然后两个指针一起移动,直到前指针到末尾null,然后删除back指针后的节点。 链表中环的入口节点 思路: 1.先找到环中一点 双指针一前一后,前者每次移动两步,后者每次移动一步,多次循环,如果相遇,则所在位置为环中一节点。 必须一前一后,否则循环无法开始 if语句为了防止空指针异常 2.找入口 由上可直前指针比慢指针多走了k步,k为环中节点数,因此可使一指针指向环中此节点,然后另一指针指向头节点,这两原创 2022-04-25 22:59:27 · 493 阅读 · 0 评论 -
剑指Offer字符串
字符串中的变位词 思路: 用一个数组来记录字母出现的次数,当数组中都为0时,说明有变位词 左右两个指针相距s1的长度,同时向右移动,每次计算是否有变位词。 字符串中所有变位词 思路:同上 ...原创 2022-04-23 22:58:40 · 72 阅读 · 0 评论 -
剑指offer 数组
1.排序数组中的两个数字之和 思路:双指针思路,一前一后,当两个值相加大于target时后指针前移,小于target时前指针后移. 2.数组中和为0的三个数 思路:先排序,三指针,先定位一个指针,其余双指针一前一后扫描,查看每次定位三数之和是否为0,前两个指针都需要排除值相同的情况,以避免查找结果相同。 3.和大于或等于k的最短子数组 思路:双指针一前一后分别指向最短子数组的首尾,先移动右指针,直到子数组大于k,然后移动左指针,直到子数组小于k,目的是寻找最短数组。 ...原创 2022-03-14 15:29:00 · 69 阅读 · 0 评论