目录:
00-学前须知
01-为什么要学习数据结构与算法.mp4
02-编程语言的选择.mp4
03-课程大纲.mp4
04-注意事项.mp4
05-课程的选择.mp4
01-复杂度
01-开发环境搭建.mp4
02-斐波那契数.mp4
03-算法的评估.mp4
04-时间复杂度的估算.mp4
05-大O表示法.mp4
06-斐波那契数复杂度分析.mp4
07-leetcode.mp4
02-动态数组
01-线性表.mp4
02-接口设计.mp4
03-简单接口的实现.mp4
04-clear.mp4
05-补充.mp4
06-add.mp4
07-打印.mp4
08-remove.mp4
09-add_index.mp4
10-接口测试.mp4
11-动态扩容.mp4
12-泛型.mp4
13-对象数组.mp4
14-clear_细节.mp4
15-remove_细节.mp4
16-equals.mp4
17-null值处理.mp4
18-ArrayList源码分析.mp4
19-答疑.mp4
20-补充.mp4
03-链表
01-简介.mp4
02-接口设计.mp4
03-clear.mp4
04-add.mp4
05-remove.mp4
06-indexOf_toString.mp4
07-练习01-删除节点.mp4
08-练习02-反转链表01-递归.mp4
09-练习02-反转链表02-迭代.mp4
10-练习03-环形链表.mp4
11-答疑.mp4
12-补充.mp4
13-虚拟头结点.mp4
14-复杂度分析01-ArrayList.mp4
15-复杂度分析02-LinkedList.mp4
16-均摊复杂度.mp4
17-ArrayList的缩容.mp4
18-复杂度震荡.mp4
19-双向链表01-简介.mp4
20-双向链表02-clear.mp4
21-双向链表03-add.mp4
22-双向链表04-remove.mp4
23-双向链表05-接口测试.mp4
24-双向链表06-总结.mp4
25-双向链表07-源码分析.mp4
26-单向循环链表01-add.mp4
27-单向循环链表02-remove.mp4
28-单向循环链表03-接口测试_修复BUG.mp4
29-双向循环链表01-add.mp4
30-双向循环链表02-remove.mp4
31-双向循环链表03-练习-约瑟夫问题.mp4
32-静态链表.mp4
33-ArrayList的优化思路.mp4
04-栈
01-设计和实现.mp4
02-应用举例.mp4
03-练习-有效的括号01.mp4
04-练习-有效的括号02.mp4
05-练习-有效的括号03.mp4
06-补充.mp4
05-队列
01-设计和实现.mp4
02-练习-用栈实现队列.mp4
03-Queue源码分析.mp4
04-双端队列_Deque源码分析.mp4
05-循环队列01-实现.mp4
06-循环队列02-测试_动态扩容.mp4
07-循环队列03-索引映射封装.mp4
08-循环双端队列01-实现.mp4
09-循环双端队列02-测试.mp4
10-循环双端队列03-模运算优化.mp4
11-clear.mp4
06-二叉树
01-树.mp4
02-二叉树及其性质.mp4
03-真二叉树_满二叉树.mp4
04-完全二叉树01-概念.mp4
05-完全二叉树02-性质01.mp4
06-完全二叉树03-性质02.mp4
07-完全二叉树04-面试题.mp4
08-完全二叉树05-公式总结.mp4
09-国外教材.mp4
07-二叉搜索树
01-需求分析.mp4
02-概念_接口设计.mp4
03-add01-根节点.mp4
04-add02-思路.mp4
05-add03-实现.mp4
06-compare01-comparable.mp4
07-compare02-comparator.mp4
08-compare03-完美结合.mp4
09-compare04-匿名类.mp4
10-打印器01-使用.mp4
11-打印器02-Person.mp4
12-打印器03-更多用法.mp4
13-打印器04-文件_建议.mp4
14-网站推荐.mp4
15-值相等的处理.mp4
16-前序遍历.mp4
17-中序遍历.mp4
18-后序遍历.mp4
19-层序遍历.mp4
20-设计遍历接口.mp4
21-增强遍历接口01.mp4
22-增强遍历接口02.mp4
23-树状打印二叉树.mp4
24-练习01-计算二叉树的高度.mp4
25-练习02-完全二叉树的判断01.mp4
26-练习02-完全二叉树的判断02.mp4
27-练习03-翻转二叉树.mp4
28-重构二叉树.mp4
29-前驱节点.mp4
30-后继节点.mp4
31-remove01-度为0_1的节点.mp4
32-remove02-度为2的节点.mp4
33-remove03-实现.mp4
34-测试_完善接口.mp4
35-代码重构.mp4
36-答疑.mp4
37-补充.mp4
08-AVL树
01-二叉搜索树复杂度分析.mp4
02-平衡二叉搜索树.mp4
03-基本概念.mp4
04-添加导致的失衡.mp4
05-旋转01-LL_RR.mp4
06-旋转02-LR_RL.mp4
07-旋转03-总结.mp4
08-afterAdd.mp4
09-计算平衡因子.mp4
10-更新高度.mp4
11-恢复平衡.mp4
12-旋转方向的判断.mp4
13-补充.mp4
14-左旋转的实现.mp4
15-右旋转的实现.mp4
16-示例.mp4
17-统一旋转操作01.mp4
18-统一旋转操作02.mp4
19-删除导致的失衡.mp4
20-删除后的平衡方案.mp4
21-afterRemove.mp4
22-总结.mp4
23-补充.mp4
09-B树
01-初识红黑树.mp4
02-初识B树.mp4
03-性质.mp4
04-B树_二叉搜索树.mp4
05-添加.mp4
06-上溢的解决.mp4
07-删除.mp4
08-下溢的解决.mp4
09-4阶B树.mp4
10-补充.mp4
10-红黑树
01-错误示范.mp4
02-与4阶B树的等价变换.mp4
03-辅助函数.mp4
04-添加01.mp4
05-添加02-情况分析.mp4
06-添加03-black_uncle01-LL_RR.mp4
07-添加04-black_uncle02-LR_RL.mp4
08-添加05-red_uncle.mp4
09-添加06-情况总结.mp4
10-添加07-实现01-red_uncle.mp4
11-添加08-实现02-black_uncle.mp4
12-添加09-测试.mp4
13-添加10-补充.mp4
14-删除01-情况分析.mp4
15-删除02-red_replacement01-分析.mp4
16-删除03-red_replacement02-实现.mp4
17-删除04-black_leaf01-根节点.mp4
18-删除05-black_leaf02-black_sibling01.mp4
19-删除06-black_leaf03-black_sibling02.mp4
20-删除07-black_leaf04-red_sibling.mp4
21-删除08-总结.mp4
22-删除09-black_leaf05-实现01-red_sibling.mp4
23-删除10-black_leaf06-实现02-black_sibling.mp4
24-删除11-black_leaf07-对称处理.mp4
25-删除12-测试.mp4
26-删除13-去除replacement参数.mp4
27-答疑.mp4
28-总结.mp4
29-平衡.mp4
30-性能对比.mp4
11-集合
01-简介.mp4
02-ListSet.mp4
03-TreeSet.mp4
04-复杂度分析.mp4
05-性能对比.mp4
06-TreeSet的局限性.mp4
12-映射
01-简介.mp4
02-Node.mp4
03-put.mp4
04-get_remove.mp4
05-contains.mp4
06-traversal.mp4
07-测试.mp4
08-利用TreeMap实现TreeSet.mp4
09-TreeMap_TreeSet源码分析.mp4
10-补充.mp4
11-代码量与性能.mp4
13-哈希表
01-TreeMap复杂度分析.mp4
02-初识哈希表.mp4
03-哈希冲突.mp4
04-JDK8的哈希冲突解决.mp4
05-哈希函数.mp4
06-哈希值计算01-int_float.mp4
07-哈希值计算02-long_double.mp4
08-哈希值计算03-字符串01.mp4
09-哈希值计算04-字符串02.mp4
10-哈希值计算05-总结.mp4
11-哈希值计算06-自定义对象.mp4
12-equals.mp4
13-同时实现hashCode_equals.mp4
14-不实现hashCode_equals.mp4
15-只实现equals.mp4
16-只实现hashCode.mp4
17-答疑.mp4
18-补充.mp4
19-clear.mp4
20-put.mp4
21-compare01-基本处理.mp4
22-compare02-其他情况.mp4
23-compare03-分析测试.mp4
24-get_containsKey.mp4
25-remove.mp4
26-containsValue_traversal.mp4
27-发现问题.mp4
28-打印红黑树.mp4
29-分析问题.mp4
30-回顾问题.mp4
31-重写node01.mp4
32-重写node02.mp4
33-重写put01.mp4
34-重写put02.mp4
35-put优化.mp4
36-node优化.mp4
37-compareTo调整.mp4
38-测试用例01.mp4
39-测试用例02.mp4
40-HashMap源码预览.mp4
41-测试用例03.mp4
42-bug修复.mp4
43-代码演化01-简化put和node.mp4
44-代码演化02-完善优化put和node.mp4
45-代码演化03-增加comparable.mp4
46-代码演化04-最后的比较策略.mp4
47-node的hash值调整.mp4
48-扩容01-装填因子.mp4
49-扩容02-思路.mp4
50-扩容03-实现.mp4
51-扩容04-测试.mp4
52-equals的规范.mp4
53-TreeMap_HashMap.mp4
54-取模运算_素数.mp4
55-答疑.mp4
56-LinkedHashMap01-创建节点.mp4
57-LinkedHashMap02-串线_清空_遍历.mp4
58-LinkedHashMap03-删除节点.mp4
59-LinkedHashMap04-删除的bug.mp4
60-LinkedHashMap05-修复bug.mp4
61-HashSet_LinkedHashSet.mp4
62-答疑.mp4
63-LinkedHashMap_HashMap源码分析.mp4
14-二叉堆
01-需求分析.mp4
02-堆.mp4
03-二叉堆.mp4
04-基本接口实现.mp4
05-add01-思路.mp4
06-add02-实现.mp4
07-打印调试.mp4
08-优化.mp4
09-抽取父类.mp4
10-remove01-思路.mp4
11-remove02-实现.mp4
12-replace.mp4
13-heapify01-自上而下的上滤.mp4
14-heapify02-自下而上的下滤.mp4
15-heapify03-效率对比.mp4
16-heapify04-复杂度计算.mp4
17-heapify05-答疑.mp4
18-heapify06-实现.mp4
19-小顶堆.mp4
20-TopK面试题.mp4
15-优先级队列
01-实现.mp4
02-PriorityQueue源码分析.mp4
16-哈夫曼树
01-需求分析.mp4
02-构建哈夫曼树.mp4
03-构建哈夫曼编码.mp4
17-Trie
01-简介.mp4
02-接口设计.mp4
03-Node设计.mp4
04-clear_get_contains.mp4
05-add.mp4
06-startsWith.mp4
07-代码调整.mp4
08-remove.mp4
09-总结_bug修复.mp4
18-补充
01-总结.mp4
02-zig_zag_满二叉树_完全二叉树.mp4
03-四则运算_表达式树.mp4
04-非递归前序遍历01-思路.mp4
05-非递归前序遍历02-实现.mp4
06-非递归中序遍历.mp4
07-非递归后序遍历01.mp4
08-非递归后序遍历02.mp4
09-非递归前序遍历的另一种思路.mp4
10-答疑.mp4
资料
开发工具
Mac
eclipse-java-2018-12-R-macosx-cocoa-x86_64.dmg
jdk-8u201-macosx-x64.dmg
Windows
eclipse-java-2018-12-R-win32-x86_64.zip
jdk-8u201-windows-x64.exe
Visualization.zip
课件.zip
评论0