摘要: Stack的常用基本操作: s.push() // 压栈 s.emplace() // 插入,相当于push(目前掌握的唯一区别是emplace可以自行调用构造函数,push不行) s.empty() // 判断栈空 s.top() // 访问栈顶元素 s.pop() // 退栈 s.size() // 记录栈大小 /*** * stack的基本操作 * Jan 1 2019 */ ... 阅读全文
posted @ 2019-01-30 23:54 糖醋麻辣虾 阅读(744) 评论(0) 推荐(0) 编辑
摘要: 单链表的常见操作: 阅读全文
posted @ 2018-10-08 19:25 糖醋麻辣虾 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 快速排序 快排的思想主要在于每次划分确定一个元素的位置,使其左侧的元素均小于它,右侧的元素均大于它,再对左右两侧递归。 未完待续 阅读全文
posted @ 2018-10-08 15:09 糖醋麻辣虾 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 1 /*** 2 * vector 基础api复习 3 * 8 AUG 2018 4 */ 5 6 #include 7 #include 8 using namespace std; 9 10 // 打印vec向量 11 void print(vector vec, int index) 12 { 13 std::cout vec0(10, 1); ... 阅读全文
posted @ 2018-08-08 18:28 糖醋麻辣虾 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 1 /*** 2 * string 基础api复习 3 * 8 AUG 2018 4 */ 5 6 #include 7 #include 8 using namespace std; 9 10 void print(string str, int index) 11 { 12 std::cout << "str" << index... 阅读全文
posted @ 2018-08-08 10:48 糖醋麻辣虾 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 易被忽略的知识点之 各种时间复杂度和空间复杂度 1- 顺序表和单链表常考的基本操作: 时间复杂度全O(n),特殊的一般会放在查找里考 2- 串中KMP时间复杂度O(m+n) 朴素模式匹配 O(m*n) 3- 图的性能分析 4- 查找的性能分析 顺序查找:O(n) ASLsuss = (n+1)/2 阅读全文
posted @ 2018-03-26 18:40 糖醋麻辣虾 阅读(198) 评论(0) 推荐(0) 编辑
摘要: Chapter 6 排序 1- 直接插入排序 O(n2) O(1) 2- 折半插入排序 O(n2) O(1) 适合关键字较多 3- 希尔排序O(nlogn) O(1) 又名,缩小增量排序 4- 冒泡排序O(n2) O(1) 一趟排序后一个关键字到达最终位置 5- 快速排序O(nlogn) O(nlo 阅读全文
posted @ 2018-03-26 16:52 糖醋麻辣虾 阅读(166) 评论(0) 推荐(0) 编辑
摘要: Chapter 5 查找 1- 顺序查找法 O(n) 2- 折半查找O(logn) :二分查找 要求:关键字有序 过程: 判定树:叶子结点为方框,代表不成功的结点。 3- 分块查找:索引顺序查找 ASL = ASL1+ASL2 4- 二叉排序树(BST) 特点:左<根<右 5- 平衡二叉树(AVL) 阅读全文
posted @ 2018-03-25 16:34 糖醋麻辣虾 阅读(139) 评论(0) 推荐(0) 编辑
摘要: Chapter 4 图 . 1- 图的存储结构 无向图:对称 有向图:…… 2- 图的遍历 1 深度优先搜索(DFS) 类似于二叉树的先序遍历 2 广度优先搜索(BFS) 类似于二叉树的层序遍历 3- 最小(代价)生成树(针对无向图)MST 1 Prim算法 O(|V2|) 只与顶点数有关,与边无关 阅读全文
posted @ 2018-03-25 11:55 糖醋麻辣虾 阅读(134) 评论(0) 推荐(0) 编辑
摘要: Chapter 3 树与二叉树 1- 二叉树 主要性质: 1 叶子结点数 = 度为2的结点数 + 1 2 二叉树第i层上最多有 (i≥1)个结点 3 深度为k的二叉树最多有 个结点 2- 二叉树的链式存储结构&&遍历 1 链式存储结构 2 先序 3 中序 4 后序 3- 线索二叉树 4- 树、二叉树 阅读全文
posted @ 2018-03-25 11:48 糖醋麻辣虾 阅读(135) 评论(0) 推荐(0) 编辑