数据结构概述
定义:我们如何把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到
主存储器(内存)中,以及在此基础上为实现某个功能(比如查找某个元素,删
除某个元素,对所有元素进行排序)而执行的相应操作,这个操作也叫做算法。
数据结构=个体+个体的关系
算法 = 对存储数据的操作(解题的方法和步骤)
衡量算法的标准:
1、时间复杂度:大概程序要执行的次数,而非执行的时间
2、空间复杂度:算法执行过程中大概所占用的最大内存
3、难易程度
4、健壮性
推介书籍:严巍敏、吴伟民、高一凡(包含程序)
模块一:线性结构
连续存储 [数组]
离散存储 [链表]
线性结构的两种常见应用之一 栈
线性结构的两种常用应用之一 队列
专题:递归
模块二:非线性结构
树
图
模块三:查找和排序
折半查找
排序:
冒泡 插入 选择 快速排序 归并排序
Java中容易和数据结构相关知识
Iterator接口
Map
哈希表