【数据结构】郝斌数据结构——笔记01
视频地址:
https://www.bilibili.com/video/BV197411A7uZ
一、数据结构概述
二、预备知识
三、模块一
线性结构: 连续存储:数组 离散存储:链表 线性结构的两种常见应用: 1、堆栈 2、队列 递归专题: 1、连续相加求和 2、求阶乘 3、汉诺塔 4、走迷宫?
四、模块二
非线性结构: 1、树 2、图
五、模块三
查找与排序: 1、折半查找 2、排序: 1、冒泡 2、插入 3、选择 4、快速 5、归并
六、Java的集合容器与数据结构
Iterator接口
Map
哈希表
一、数据结构概述
什么叫数据结构?
如何把现实生活中大量而复杂的问题以特定的数据类型和特定的存储结构保存到我们的主存储器(内存)中,
以及在此基础之上为实现某个功能而执行的操作,而如何操作,就被称之为算法
数据结构 = 复杂的N多个个体 + 个体之间的关系
算法 = 存储数据的操作
衡量算法的标准?
1、时间复杂度,程序要执行的次数,并非是执行的时间
为什么不是以时间作为单位来衡量算法?
因为不同的机器执行的速度并不一样,时间无法作为可参考的标准。
所以按照程序的关键步骤所执行的次数来计算衡量
2、空间复杂度,算法执行过程中需要的内存容量
3、难易程度,算法的可读性,可以被理解掌握
4、健壮性,安全性
数据结构的特点?
数据结构是软件开发最核心的课程
程序 = 数据的存储 + 数据的操作 + 可以被计算机执行的语言
二、预备知识
1、指针
2、结构体
3、动态内存的分配和释放