书籍算法最优解ACM算法实现数据结构与算法计算机考研
算法最优解ACM算法实现数据结构与算法计算机考研
特别说明:
1、本手册基于剑指Offer、算法(第四版)、牛客网评论、洛谷网评论、以及其他搜索到的相关文章等公开资料整理得出,每道题都记录了最优解,包括代码格式、方法技巧,同时目录结构清晰,适用于考研初试的算法能力提高、考研机试、找工作笔试面试等。试题内容均来自网络公开内容整理得出。
目录
1 最优算法 4
1.1 求数组中超过一半的数字 4
1.2 滑动窗口的最大值 5
1.3 第一个只出现1次的字符 7
1.4 把数组排列成最小的数 8
1.5 数组中只出现一次的数 9
1.6 数组中重复一次的数 10
1.7 数组中单独出现两次的数字 10
1.8 数组中重复出现多次的数 12
1.9 和为S的两个数字 13
1.10 和为S的连续正整数序列 13
1.11 输出第n个丑数 15
1.12 数字在排序数组中出现的次数 16
1.13 最小的k个数 17
1.14 连续子数组的最大和 18
1.15 列升序行升序的数组中查找元素 19
1.16 空格替换为%20 20
1.17 旋转数组求最小值 22
1.18 数组的逆序对 23
1.19 变态跳台阶 27
1.20 二进制中1的个数 28
1.21 调整数组顺序使奇数位于偶数前面并保持相对顺序不变 28
1.22 打印1到最大的n位数 29
1.23 左移字符串 30
1.24 翻转单词顺序 31
1.25 顺时针打印矩阵 32
1.26 栈的压入弹出序列 34
1.27 n个骰子点数和出现的次数 35
1.28 约瑟夫环问题 36
1.29 表示数值的字符串 38
1.30 正则表达式匹配 42
1.31 字符流中第一个不重复的字符 42
1.32 数据流的中位数 43
2 其他题目 44
2.1 字符串/数字的排列组合问题 44
2.2 整数1出现的次数 47
2.3 扑克牌顺子 49
2.4 把字符串转换成整数 49
2.5 构建乘积数组 50
2.6 机器人的运动范围 51
2.7 矩阵中的路径 53
3 特殊解法 54
3.1 用两个栈实现队列 54
3.2 数值的整数次方 55
3.3 包含min函数的栈 56
3.4 不用循环乘法求1-n的和 56
3.5 不用加减乘除做加法 57
4 链表部分 58
4.1 单链表逆置-头插法 58
4.2 从尾到头打印单链表 59
4.3 链表中倒数第k个结点 59
4.4 链表环-计算环的长度 60
4.5 链表环-计算环的入口结点 61
4.6 链表的第一个公共结点 62
4.7 合并两个单调递增的单链表 63
4.8 复杂链表的复制 63
4.9 删除链表中重复的结点 66
5 树部分 67
5.1 重建二叉树 67
5.2 二叉树的层次遍历 68
5.3 树的子结构 68
5.4 二叉树的镜像 69
5.5 判断一个序列是不是二叉排序树的后续遍历序列 70
5.6 二叉树中和为某一值的路径 71
5.7 二叉排序树转换为双向链表 72
5.8 二叉树的深度 74
5.9 判断一棵树是否是平衡二叉树 75
5.10 二叉树的下一个结点 75
5.11 对称二叉树 76
5.12 求二叉树树中两结点的公共祖先 78
5.13 按之字形打印二叉树 79
5.14 二叉排序树的第k个结点 81
5.15 二叉树的非递归遍历汇总 82
此内容需要购买查看
少一点点挥霍,多很多很多知识