Content
10 Lessons • 0 Quizzes • 0 Challenges
复杂度度量简介
- 1
比较算法
- 2
示例:测量for循环的时间复杂度
- 3
示例:测量嵌套 for 循环的时间复杂度
- 4
渐近分析与大O表示法简介
- 5
其他常见的渐近符号及大O符号为何更常用
- 6
实用公式
- 7
常见复杂度场景
- 8
挑战:带加法的嵌套循环的时间复杂度 O(n²)(checkpoint)
- 9
解法:带加法的嵌套循环的时间复杂度 O(n²)
- 10
挑战:带减法的嵌套循环的时间复杂度 O(n²)(checkpoint)
- 11
解法:带减法的嵌套循环的时间复杂度 O(n²)(concept)
- 12
挑战:带乘法的嵌套循环的时间复杂度 O
- 13
解法:具有乘法操作的嵌套循环的时间复杂度 O(n)
- 14
挑战:嵌套循环与乘法(基础)
- 15
解法:嵌套循环与乘法(基础)
- 16
挑战:带乘法的嵌套循环(中级)
- 17
解决方案:带乘法的嵌套循环(中级)
- 18
挑战:嵌套循环与乘法(高级)
- 19
解决方案:带乘法的嵌套循环(高级)
- 20
挑战:嵌套循环与乘法(进阶)
- 21
解决方案:带乘法的嵌套循环(进阶版)
- 22
复杂度测验:检验你对复杂度的理解
列表简介
- 1
列表
- 2
数组
- 3
Python 中的列表与数组
- 4
挑战:从列表中移除偶数整数
- 5
解决方案:从列表中移除偶数整数
- 6
挑战:合并两个有序列表
- 7
解决方案:合并两个有序列表
- 8
挑战:找出和为 K 的两个数
- 9
解法:找出和为 K 的两个数
- 10
挑战:除自身以外数组的乘积
- 11
解决方案:除自身以外数组的乘积
- 12
挑战:在列表中查找最小值
- 13
解决方案:在列表中查找最小值
- 14
挑战:找出列表中第一个不重复的整数
- 15
解法:列表中第一个不重复的整数
- 16
挑战:在列表中找到第二大的值
- 17
解决方案:在列表中查找第二大的值
- 18
挑战:旋转列表
- 19
解决方案:旋转列表
- 20
挑战:重新排列正负数值
- 21
解决方案:重排正负数值
- 22
挑战:将有序列表按最大/最小值形式重新排列
- 23
解决方案:将有序列表按最大/最小形式重新排列
- 24
挑战:最大子列表
- 25
解决方案:最大子列表
- 26
列表测验:检验你对列表的理解程度
链表简介
- 1
单向链表(SLL)
- 2
链表与列表的对比
- 3
基本链表操作
- 4
单链表插入
- 5
单链表删除
- 6
双向链表(DLL)
- 7
单向链表与双向链表
- 8
挑战:在尾部插入元素
- 9
解决方案:尾部插入
- 10
挑战:在单向链表中搜索
- 11
解决方案:在单向链表中搜索
- 12
挑战:按值删除
- 13
解决方案:按值删除
- 14
挑战:求链表的长度
- 15
解决方案:查找链表的长度
- 16
挑战:反转链表
- 17
解决方案:反转链表
- 18
挑战:链表环
- 19
解决方案:链表环
- 20
挑战:链表的中间节点
- 21
解决方案:链表的中间节点
- 22
挑战:从链表中移除重复元素
- 23
解决方案:从链表中移除重复元素
- 24
挑战:链表的并集与交集
- 25
解决方案:链表的并集与交集
- 26
挑战:从末尾返回第 N 个节点
- 27
解决方案:返回倒数第 N 个节点
- 28
挑战:判断一个双向链表是否为回文
- 29
解决方案:判断双向链表是否为回文
- 30
链表测验:检验你对链表的理解程度
栈和队列简介
- 1
什么是栈?
- 2
栈(实现)
- 3
什么是队列?
- 4
队列(实现)
- 5
挑战:使用队列生成从 1 到 n 的二进制数
- 6
解决方案:使用队列生成从 1 到 n 的二进制数
- 7
挑战:使用一个列表实现两个栈
- 8
解决方案:使用一个列表实现两个栈
- 9
挑战:反转队列的前 k 个元素
- 10
解决方案:反转队列的前 k 个元素
- 11
挑战:使用栈实现队列
- 12
解决方案:使用栈实现队列
- 13
挑战:对栈中的元素进行排序
- 14
解决方案:对栈中的元素进行排序
- 15
挑战:使用栈求解后缀表达式
- 16
解决方案:使用栈求解后缀表达式
- 17
挑战:使用栈求下一个更大元素
- 18
解决方案:使用栈实现下一个更大元素
- 19
挑战:找出名人
- 20
解决方案:找出名人
- 21
挑战:有效的括号
- 22
解决方案:有效的括号
- 23
挑战:最小栈
- 24
解决方案:最小栈
- 25
栈/队列测验:测试你对栈/队列的理解
图论简介
- 1
什么是图?
- 2
图的类型
- 3
图的表示方法
- 4
图的实现
- 5
图操作的复杂度
- 6
什么是二分图?
- 7
图遍历算法
- 8
挑战:实现广度优先搜索
- 9
解决方案:实现广度优先搜索
- 10
挑战:实现深度优先搜索
- 11
解决方案:实现深度优先搜索
- 12
挑战:检测有向图中的环
- 13
解决方案:检测有向图中的环
- 14
挑战:在有向图中找到一个母顶点
- 15
解决方案:在有向图中找到一个母顶点
- 16
挑战:计算无向图中的边数
- 17
解法:统计无向图中的边数
- 18
挑战:检查两个顶点之间是否存在路径
- 19
解决方案:检查两个顶点之间是否存在路径
- 20
挑战:图是否为有效树
- 21
解决方案:图是否为有效树
- 22
挑战:找到两个顶点之间的最短路径
- 23
解决方案:查找两个顶点之间的最短路径
- 24
挑战:从有向图中移除一条边
- 25
解决方案:从有向图中移除边
- 26
图论测验:检验你对图的理解
树简介
- 1
树及其基本性质
- 2
是什么让一棵树被称为“平衡”的?
- 3
什么是二叉树?
- 4
关于完全二叉树的更多内容
- 5
偏斜二叉树
- 6
什么是二叉搜索树(BST)?
- 7
在 Python 中实现二叉搜索树
- 8
二叉搜索树插入
- 9
二叉搜索树插入(实现)
- 10
二叉搜索树中的查找(实现)
- 11
二叉搜索树中的删除操作
- 12
二叉搜索树中的删除操作(实现)
- 13
前序遍历
- 14
后序遍历
- 15
中序遍历
- 16
什么是AVL树?
- 17
AVL 插入
- 18
AVL 删除
- 19
什么是红黑树?
- 20
红黑树插入
- 21
红黑树删除
- 22
什么是2-3树?
- 23
2-3 插入
- 24
2-3 删除(情况一)
- 25
2-3 删除操作(情况二)
- 26
2-3-4 树
- 27
树的概述
- 28
挑战:在二叉搜索树中找到最小值
- 29
解法:在二叉搜索树中查找最小值
- 30
挑战:在二叉搜索树中找到第 k 个最大值
- 31
解决方案:在二叉搜索树中找到第 k 个最大值
- 32
挑战:在二叉搜索树中查找给定节点的祖先
- 33
解决方案:在二叉搜索树中查找给定节点的祖先
- 34
挑战:求二叉搜索树的高度
- 35
解决方案:求二叉搜索树的高度
- 36
挑战:找出距离根节点为 k 的所有节点
- 37
解法:找出距离根节点为 k 的节点
- 38
树结构测验:检验你对树的理解
Trie
- 1
什么是Trie?
- 2
Trie 的结构
- 3
Trie中的插入操作
- 4
在Trie中搜索
- 5
Trie 中的删除操作
- 6
挑战:Trie 树中单词的总数
- 7
解法:Trie 树中的单词总数
- 8
挑战:找出存储在 Trie 中的所有单词
- 9
解决方案:查找存储在 Trie 中的所有单词
- 10
挑战:使用 Trie 对列表进行排序
- 11
解决方案:使用字典树进行列表排序
- 12
挑战:使用 Trie 从字典中构造单词
- 13
解决方案:使用 Trie 从字典中构建单词
- 14
Trie 测验:检验你对 Trie 的理解
堆简介
- 1
什么是堆?
- 2
最大堆:简介
- 3
最大堆(实现)
- 4
最小堆:简介
- 5
最小堆(实现)
- 6
挑战:将最大堆转换为最小堆
- 7
解决方案:将最大堆转换为最小堆
- 8
挑战:在列表中找到最小的 k 个元素
- 9
解法:在列表中找到最小的 k 个元素
- 10
挑战:在列表中找到最大的 K 个元素
- 11
解决方案:在列表中查找 K 个最大的元素
- 12
堆 Quiz:测试你对堆的理解
哈希简介
- 1
什么是哈希表?
- 2
哈希函数
- 3
哈希表中的冲突
- 4
从零构建一个哈希表
- 5
哈希表中的添加/删除与查找(实现)
- 6
哈希表快速概览
- 7
树与哈希表
- 8
字典与集合
- 9
挑战:一个列表是另一个列表的子集
- 10
解决方案:一个列表作为另一个列表的子集
- 11
挑战:检查列表是否互不相交
- 12
解决方案:检查列表是否不相交
- 13
挑战:在列表中找出对称对
- 14
解决方案:在列表中查找对称数对
- 15
挑战:追踪旅程的完整路径
- 16
解决方案:追踪旅程的完整路径
- 17
挑战:在数组中找到两对元素,使得 a + b = c + d
- 18
解法:在数组中找到两对元素,使得 a + b = c + d
- 19
挑战:和为0的子列表
- 20
解法:和为0的子列表
- 21
挑战:使用哈希表构造单词
- 22
解决方案:使用哈希表构造单词
- 23
挑战:找出和为 k 的两个数——哈希法
- 24
解决方案:找出和为 k 的两个数——哈希法
- 25
挑战:找出列表中第一个不重复的整数——哈希法
- 26
解决方案:使用哈希法找出列表中第一个不重复的整数
- 27
挑战:链表环检测——哈希法
- 28
解决方案:链表环检测——哈希法
- 29
挑战:使用哈希表删除链表中的重复元素
- 30
解决方案:使用哈希法删除链表中的重复元素
- 31
挑战:链表的并集与交集——哈希法
- 32
解决方案:链表的并集与交集——哈希法
- 33
哈希测验:检验你对哈希的理解程度
数据结构总结
- 1
线性与非线性数据结构概述
- 2
结论
Certificate of Completion
Showcase your accomplishment by sharing your certificate of completion.
Course Author:Anonymous User