数据结构概述
定义:
- 把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器(内存)中,以及在此基础上为实现某个功能(例如查找和删除)而执行的相应操作,这个操作称为算法。
- 简化一句:把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器(内存)
(严蔚敏、吴伟民 伪算法:只管思路不给程序;;高一凡:全部用C和C++代码实现;黄国瑜:台湾人)
算法
-
解题的方法和步骤
-
衡量算法的标准
-
时间复杂度:程序要执行的次数,而非执行的时间
-
空间复杂度:算法执行过程中大概所占用的最大内存
-
难易程度(可度性强)
-
健壮性(抗干扰强)
数据结构地位:
软件中最核心的课程
程序 = 数据的存储 + 数据的操作 + 可以被计算机执行的语言
-
数据结构 = 个体 + 个体的关系
算法 = 对存储数据的操作
预备知识
- 指针
- 结构体
- 动态内存的分配和释放
模块一:线性结构
-
连续结构[数组]
-
离散结构[链表]
-
线性结构的两种常用应用之一 栈(堆属于分配内存的一种方式,不属于数据的一种结构)
-
线性结构的两种常用应用之一 队列
专题:递归
- 1+2+....+100的和
- 求阶乘
- 汉诺塔
- 走迷宫
模块二:非线性结构
- 数
- 图
模块三:查找和排序
- 折半查找
- 排序:
- 冒泡排序(重点)
- 插入排序
- 选择排序
- 快速排序(重点)
- 归并排序
Java中容器和数据结构相关知识
- Iterator接口
- Map
- 哈希表
数据库问题
- 字段:属性
- 记录:事物
- 表:同一个事物的集合
# 学号 姓名 年龄 成绩
标签:存储,01,算法,数据结构,概述,内存,排序,结构 来源: https://www.cnblogs.com/chentongxue/p/16433974.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。