JS版剑指offer---总结(技巧,题目,详解)

作者:汕大小吴
链接:https://www.nowcoder.com/discuss/101711
来源:牛客网

介绍

用JavaScript刷完了剑指offer,故总结下每道题的难度、解决关键点,详细题解代码可以点链接进去细看。

同发布在我的博客: https://www.cnblogs.com/wuguanglin/p/code-interview.html

关于刷题的技巧可以看我之前的这篇刷题总结:https://www.nowcoder.com/discuss/72658

剑指offer的题目在牛客网上可以看:https://www.nowcoder.com/ta/coding-interviews

所有题目的代码已经上传到了github上:https://github.com/14glwu/FEInterviewBox/tree/master/%E5%89%91%E6%8C%87offer

目录

题目=》难易程度=》关键词

(1)二位数组的查找 简单  有顺序、左下角做起始点

(2)替换空格 简单  正则

(3)从尾到头打印链表 简单  栈

(4)重建二叉树 中等  画图、递归、注意下标

(5)用两个栈实现队列 简单  注意判断条件

(6)旋转数组中的最小数字 简单  二分法

(7)斐波那契数列 简单  动态规划

(8)跳台阶 简单  动态规划

(9)变态跳台阶 中等  类似斐波那契、数学分析

(10)矩形覆盖 简单偏难  类似斐波那契

(11)二进制中1的个数 中等  位运算n=n&n-1

(12)数值的整数次方 中等  数学分析、位运算

(13)调整数组顺序使奇数位于偶数前面 简单  两个变量作为奇数和偶数的下标

(14)链表中倒数第k个节点 简单  双指针法

(15)反转链表 简单  三个指针

(16)合并两个排序的链表 简单  递归

(17)树的子结构 简单偏难  注意判断条件、递归

(18)二叉树的镜像 简单  递归

(19)顺时针打印矩阵 中等偏难  注意判断条件、递归 || 模拟魔方法

(20)包含min函数的栈 中等  辅助栈

(21)栈的压入、弹出序列 中等 辅助栈

(22)从上往下打印二叉树 简单  广度遍历、队列

(23)二叉树的后续遍历序列 中等  画图

(24)二叉树和为某一值的遍历序列 中等  深度遍历、递归

(25)复杂链表的复制 难  map保存<N,N'> || N->N'得S->S‘

(26)二叉搜索树与双向链表 中等偏难  递归、中序遍历

(27)字符串的排列 难  回溯法 || 递归全排列法

(28)数组中出现次数超过一半的数 中等  partion法 || times变量变化法

(29)最小的k个数 中等  partion法

(30)连续子数组的最大值 中等  找规律、动态规划、注意判断条件

(31)1~n整数中1出现的次数 中等  位运算 || 数学分析

(32)把数组排成最小的数 简单偏难  改变排序规则

(33)丑数 难  动态规划、注意判断条件

(34)第一个只出现一次的字符 哈希表记录

(35)数组中的逆序对 难+  基于归并排序、临时数组

(36)两个链表中的第一个公共节点 简单  双指针法

(37)数字在排序数组中出现的次数 简单偏难  二分法改造

(38)二叉树的深度 简单  递归

(39)平衡二叉树 简单  递归

(40)数组中只出现一次的数字 简单  indexOf || map记录 || 异或

(41)和为S的连续正数序列 中等  数学分析

(42)和为S的字符串 简单  双指针

(43)左旋转字符串 简单  裁剪拼接

(44)单次翻转序列 简单  转数组,对每项反序

(45)扑克牌顺子 中等  注意题目条件、位运算判断数字重复

(46)孩子们的游戏 难  数学分析得出公式 || 画图按题目做、注意下标

(47)求1+2+3+...+n 中等  位运算、递归

(48)不用加减乘除做加法 中等  位运算

(49)把字符串转成整数 中等  位运算

(50)数组中重复的数字 中等  将值放到对应位置上

(51)构建乘积数组 中等偏上  借助中间变量存储后面的乘积

(52)正则表达式的匹配 难  注意判断条件、递归

(53)表示数值的字符串 中等  正则

(54)字符流中第一个不重复的数字 中等  map记录 || indexOf法

(55)链表中环的入口节点 中等  双指针法、数学分析

(56)删除链表中重复的节点 中等  加头节点、注意多个重复

(57)二叉树的下一个节点 中等  画图、分析各种情况

(58)对称的二叉树 中等  递归、对称遍历

(59)按之字形顺序打印二叉树 难  广度遍历、两个栈

(60)把二叉树打印成多行 中等偏难  队列+两个记录变量

(61)序列化二叉树 中等  数组代表流、递归

(62)二叉搜索树的第k个节点 中等  中序遍历+计数变量

(63)数据流的中位数 中等  partion法 || 维持排序 || 排序链表法 || AVL树 || 最大堆和最小堆

(64)滑动窗口中的最大值 难  改变参考对象、双端队列、存下标

(65)矩阵中的路径 中等  回溯法

(66)机器人的运动范围 中等  回溯法

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,367评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,959评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,750评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,226评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,252评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,975评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,592评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,497评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,027评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,147评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,274评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,953评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,623评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,143评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,260评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,607评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,271评论 2 358