JS刷剑指offer总结

介绍

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

关于JS刷题的技巧可以看我之前的这篇JS刷题总结

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

所有题目的代码已经上传到了github上:https://github.com/14glwu/FEInterviewBox/tree/master/剑指offer

 

目录

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

(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)机器人的运动范围  中等 回溯法

 


更多专业前端知识,请上 【猿2048】www.mk2048.com