-
第2章 线性表
- 顺序表的定义和基本操作
- 单链表的定义和基本操作
- 双链表的定义和基本操作
- 线性表习题集
-
第3章 栈和队列
- 栈的存储结构和算法
- 队列的存储结构和算法
- 队列和栈的习题
-
第6章 树和二叉树
- 二叉树的存储结构和基本操作(主要是二叉树)
- 二叉树的递归遍历
- 二叉树的非递归遍历
- 索引二叉树
- 树、森林、二叉树
- 二叉树习题
-
第8章 内部排序
- 插入类
- 直接插入排序
- 折半插入排序
- 希尔排序
- 交换类
- 冒泡排序
- 快速排序
- 选择类
- 简单选择排序
- 最大堆调整
- 选择类
- 简单选择排序
- 堆排序
- 归并排序
- 二路归并排序
- 插入类
-
第9章 查找
- 顺序查找
- 折半查找
- 二叉排序树
- 平衡二叉排序树
- 第1章 C++编程基础
extern void example_01_06(); // p7
extern void example_01_07(); // p33
extern void ex_01_01(); // p7
extern void ex_01_02(); // p7
extern void ex_01_05(); // p33
extern void ex_01_06(); // p33
extern void ex_01_07(); // p34
- 第2章 面向过程的编程风格
extern bool example_02_01(int pos, int &elem); // p36
extern void example_02_02(); // p45 传值、传指针、传引用
extern const vector<int>* example_02_03(int size); // p54 局部静态对象
extern bool example_02_04(int pos, int& elems); // p55 内联函数
lc: leetcode、面试题(smo): 剑指offer
题号 | 题名 | 方法 |
---|---|---|
167 | 两数之和 II - 输入有序数组 | 双指针 |
面试题57 | 和为s的两个数字 | 双指针 |
977 | 有序数组的平方 | 双指针 |
88 | 合并两个有序数组 | 双指针 |
26 | 删除排序数组中的重复项 | 双指针 |
283 | 移动零 | 双指针 |
面试题03 | 数组中重复的数字 | 哈希 |
面试题04 | 二维数组中的查找 | 双指针 |
面试题06 | 从尾到头打印链表 | 双指针 |
面试题21 | 调整数组顺序使奇数位于偶数前面 | 双指针 |
面试题39 | 数组中出现次数超过一半的数字 | |
面试题63 | 股票的最大利润 | 打擂台法 |