现在正式开始学习数据结构
数据结构的前置知识:
1.复杂度的学习
2.泛型的学习
学完这两个后才正式开始学习数据结构
什么是数据结构??
1.Java和C++的数据结构有什么不一样??
答:一样的!数据结构是一门单独的学科,和语言没有关系,只是通过不同语言来实现这个结构
2.数据结构和数据库有什么区别??
这是两个不同的东西,你可以认为数据库的底层组织也是用到了数据结构!!
数据结构:是描述和组织数据的方式,数据结构有很多种,意味着不同的数据结构组织和描述数据的方式不一样!特定的情况下会使用特定的数据结构!
数据库:用来存储我的数据
3.数据结构 和 Java的集合类有什么关系?
你可以认为Java的集合类背后就是一个数据结构,只不过Java的集合类已经帮你实现好了这个结构,你无需实现
4.那么可以不学具体的实现,直接去使用Java的集合类吗??
不可以,接下来的学习都是先学原生的结构,然后再学具体的集合类
5.数据结构和算法有什么关系呢??
一个题要用算法实现,是离不开好的数据结构的!
数据结构其实从某种意义上说是为了支持我们算法的实现的
初阶数据结构需要学习的:
1. 顺序表
2. 单向不带头非循环链表
3. 双向不带头非循环链表
4. 栈
5. 队列
6. 优先级队列
7. 二叉树
8. 二叉搜索树
9. 哈希表
10. 排序:8个实现2个思想
高阶数据结构需要学习的:
1. AVL树
2. 红黑树
3. B树
4. B+树
6. B*树
7. 位图
8. 布隆过滤器
9. 图:7个算法 最短路劲 最小生成树