什么是数据结构?
数据结构就是 数据+结构, 功能就是描述和组织数据
比如我有10万个QQ号, 我来组织, 有很多种组织方法, 比如链表, 树, 堆, 栈等等.
假如QQ号要查找数据, 有种数据结构查找数据速度很快, 我们就用它
加入QQ号要进行删除数据, 有种数据结构删除速度很快, 我们就用它,
数据结构就是我们描述和组织数据的一种工具, 我们需要了解每一种数据结构的特点, 并且熟练使用它.
什么是集合?
java会把一些数据结构封装起来,你想要一个链表, java里面有一个类专门表示链表, 你想要一棵树, java中有一个结构表示数, 这就叫做集合, C++里面叫做STL.
既然java帮我们实现好了, 我们为什么还要学习呢? 我们要知其然还要知其所以然, 这样才算真正学会了, 否则只能算是一知半解.
java集合框架
java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes.了解集合框架可以更深入的了解数据结构.
下图只描述了一部分集合框架:
4个重要接口, 分别是List, Queue, Set, Map. 其他的类实现了这些接口
stack 是栈, ArrayList动态数组(顺序表), LinkedList双向链表(队列), PriorityQueue优先级队列
TreeSet 和 TreeMap 底层是一棵红黑树
HashSet 和 HashMap 底层是哈希表(数组+链表+红黑树)
如何学习?
多思考,
多动手, 如:画画图, 写写博客.
多练习, 刷刷题.