剑指Offer系列刷题笔记汇总

2018年2月3日14:50:36 17 105,673 °C
摘要

刷题刷的比较慢,花费了两个多月,终于将所有题目过了一遍,牛客网一共有66道题,这次刷题主要使用C++,接下来会使用Python重新过一遍,并对这些写过的文章进行更新。

剑指Offer系列刷题笔记汇总

一、前言

本系列文章为《剑指Offer》刷题笔记。

刷题平台:牛客网

书籍下载:共享资源

刷题刷的比较慢,花费了两个多月,终于将所有题目过了一遍,牛客网一共有66道题,这次刷题主要使用C++,接下来会使用Python重新过一遍,并对这些写过的文章进行更新。同时,也会重新开始刷Leetcode。

这里送大家一本帮助我拿到BAT 等一线大厂 offer 的算法笔记,是一位谷歌和阿里的大神写的,对于算法薄弱或者需要提高的同学都十分受用:

谷歌和BAT大佬的刷题笔记,看完秒杀80%的算法题!

二、总结

现对这66道题目进行了粗略的划分,整理如下:

链表(8道):

剑指Offer(三):从尾到头打印链表

剑指Offer(十四):链表中倒数第k个结点

剑指Offer(十五):反转链表

剑指Offer(十六):合并两个排序的链表

剑指Offer(二十五):复杂链表的复制

剑指Offer(三十六):两个链表的第一个公共结点

剑指Offer(五十五):链表中环的入口结点

剑指Offer(五十六):删除链表中重复的结点

二叉树(12道):

剑指Offer(四):重建二叉树

剑指Offer(十七):树的子结构

剑指Offer(十八):二叉树的镜像

剑指Offer(二十二):从上往下打印二叉树

剑指Offer(二十四):二叉树中和为某一值的路径

剑指Offer(三十八):二叉树的深度

剑指Offer(三十九):平衡二叉树

剑指Offer(五十七):二叉树的下一个结点

剑指Offer(五十八):对称的二叉树

剑指Offer(五十九):按之字顺序打印二叉树

剑指Offer(六十):把二叉树打印成多行

剑指Offer(六十一):序列化二叉树

二叉搜索树(3道):

剑指Offer(二十三):二叉搜索树的后序遍历序列

剑指Offer(二十六):二叉搜索树与双向链表

剑指Offer(六十二):二叉搜索树的第k个结点

数组(11道):

剑指Offer(一):二维数组中的查找

剑指Offer(六):旋转数组的最小数字

剑指Offer(十三):调整数组顺序使奇数位于偶数前面

剑指Offer(二十八):数组中出现次数超过一半的数字

剑指Offer(三十):连续子数组的最大和

剑指Offer(三十二):把数组排成最小的数

剑指Offer(三十五):数组中的逆序对

剑指Offer(三十七):数字在排序数组中出现的次数

剑指Offer(四十):数组中只出现一次的数字

剑指Offer(五十):数组中重复的数字

剑指Offer(五十一):构建乘积数组

字符串(8道):

剑指Offer(二):替换空格

剑指Offer(二十七):字符串的排列

剑指Offer(三十四):第一个只出现一次的字符

剑指Offer(四十三):左旋转字符串

剑指Offer(四十四):翻转单词顺序序列

剑指Offer(四十九):把字符串转换成整数

剑指Offer(五十二):正则表达式匹配

剑指Offer(五十三):表示数值的字符串

栈(3道):

剑指Offer(五):用两个栈实现队列

剑指Offer(二十):包含min函数的栈

剑指Offer(二十一):栈的压入、弹出序列

递归(4道):

剑指Offer(七):裴波那契数列

剑指Offer(八):跳台阶

剑指Offer(九):变态跳台阶

剑指Offer(十):矩形覆盖

回溯法(2道):

剑指Offer(六十五):矩阵中的路径

剑指Offer(六十六):机器人的运动范围

其他(15道):

剑指Offer(十一):二进制中1的个数

剑指Offer(十二):数值的整数次方

剑指Offer(十九):顺时针打印矩阵

剑指Offer(二十九):最小的K个数

剑指Offer(三十一):整数中1出现的次数(从1到n整数中1出现的次数)

剑指Offer(三十三):丑数

剑指Offer(四十一):和为S的连续正数序列

剑指Offer(四十二):和为S的两个数字

剑指Offer(四十五):扑克牌顺子

剑指Offer(四十六):孩子们的游戏(圆圈中最后剩下的数)

剑指Offer(四十七):求1+2+3+…+n

剑指Offer(四十八):不用加减乘除的加法

剑指Offer(五十四):字符流中第一个不重复的字符

剑指Offer(六十三):数据流中的中位数

剑指Offer(六十四):滑动窗口的最大值

 

Github项目:https://github.com/Jack-Cherish/LeetCode

 

最后,这里送大家一本帮助我拿到BAT 等一线大厂 offer 的算法笔记,是一位谷歌和阿里的大神写的,对于算法薄弱或者需要提高的同学都十分受用:

谷歌和BAT大佬的刷题笔记,看完秒杀80%的算法题!

weinxin
微信公众号
分享技术,乐享生活:微信公众号搜索「JackCui-AI」关注一个在互联网摸爬滚打的潜行者。
Jack Cui

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:17   其中:访客  9   博主  8

    • avatar 发文 未知系统 谷歌浏览器 Windows 10 局域网 对方和您在同一内部网 4

      https://www.hinmeng.com/
      楼主 这个网站跟你的很像啊 他是不是抄你的

        • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 百度网讯科技联通节点

          @发文 不是,这个是用相似的主题。

        • avatar Pinkman 来自天朝的朋友 Safari浏览器 Mac OS X 10_13_4 北京市 联通 3

          学长 我是今天qq和你聊天的那个 什么时候能有python版啊?

            • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Windows 7 辽宁省沈阳市 东北大学三舍南(研究生)

              @Pinkman python的已经陆续加上了,还剩几个没加。后面有时间,还会更新的。

            • avatar AI_黄嘉浈 来自天朝的朋友 谷歌浏览器 Windows 7 广东省深圳市 联通 2

              博主你好,请问下找机器学习/数据分析相关的工作,也需要对数据结构非常熟悉吗? 因为我不是it专业出身,对数据结构这块几乎没什么涉略,个人感觉掌握了算法的理论和程序实现的方法,就基本上能做事了,不知道博主怎么看,谢谢。

                • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Windows 7 辽宁省沈阳市 东北大学三舍南(研究生)

                  @AI_黄嘉浈 数据结构必须掌握,这是面试的第一关。非科班的不用非常熟悉,但是常规的数据结构题要会做,比如剑指offer那些常规题。面试的时候,这也都是基础考点。可能工作时候,有些时候不用到这些东西。但是找工作的时候,都会考,没法避免。除非运气好,几个面试官都不考你。

                    • avatar AI_黄嘉浈 来自天朝的朋友 谷歌浏览器 Windows 7 广东省深圳市 电信 2

                      @Jack Cui 看来这是行规,跟编程扯上关系的工作都得考考你计算机程序原理掌握得咋样,转行的表示很吃力,又得去撕数据结构了 :!: ,谢谢博主。

                        • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Windows 7 辽宁省沈阳市 东北大学三舍南(研究生)

                          @AI_黄嘉浈 对啊,必须撕,加油~! :wink:

                            • avatar AI_黄嘉浈 来自天朝的朋友 谷歌浏览器 Windows 7 广东省深圳市 电信 2

                              @Jack Cui 撕起来,撕起来 :twisted:

                      • avatar SmartGyro 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 北京电信互联网数据中心 1

                        LZ大大,请问一下你这边刷Leetcode有好的建议没?比如说按照什么形式刷?哪去去找优质答案等等,这几天看你剑指offer系列文章,感觉有些解法就比书上来的好,谢谢

                          • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器  Android 8.0.0 MIX 2 Build/OPR1.170623.027 黑龙江省哈尔滨市 联通

                            @SmartGyro leetcode就刷 top100吧 都是经典考题 题解官网也有的 只不过可能不够详细

                              • avatar SmartGyro 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 北京电信互联网数据中心 1

                                @Jack Cui 请问top100的内容够大部分笔试要求吗?

                                  • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Windows 10 黑龙江省哈尔滨市 联通

                                    @SmartGyro 够了,top100很难了,包括简单、中等、困难。

                              • avatar 晴天★微笑め 来自天朝的朋友 谷歌浏览器 Windows 10 吉林省长春市 吉林大学 0

                                请问楼主,剑指offer是最好按原本顺序刷,还是按题型刷呢?谢谢。

                                • avatar 锟斤拷锟斤拷锟斤拷锟斤拷 来自天朝的朋友 谷歌浏览器 Windows 10 山西省朔州市 联通 4

                                  老哥有一个南航的建的那个qq群能让我加一下吗