[数据结构]【笔记】学习第一天--绪论
本帖最后由 小熊孩 于 2020-9-21 20:49 编辑``` properties
当回首往事的时候,不因虚度年华而悔恨.
2020.9.21
```
# 绪论
## 数据结构的基本概念
1. 数据
> 数据是对客观事物的符号表示.(能输入到计算机中的,能被计算机程序所处理的所有符号.)
> 比如:你的花呗余额.万物皆数据.(黑客帝国,那一堆 全是二进制,是数据吧)
2. 数据元素 D
> 数据也称为节点,时表示数据项的基本单位,在计算机程序中通常作为一个整体进行考虑和处理.
> 比如:你 就是一个数据元素
3. 数据项
> 数据项是数据的最小单位.数据元素可以由若干个数据项组成.
> 比如:你(数据元素),有唯一的身份证号码,姓名,性别(数据项)
4. 数据对象
> 数据对象是性质相同的数据元素的集合,是数据的一个子集.
> 比如:人类(男,女,其他) ,以前是(10)种人,现在是(11)种人
5. 数据结构 DS
> 数据结构是指相互之间存在某种关系的数据元素的集合,数据结构中的关系主要是指相邻关系.数据结构包含三方面内容:逻辑结构,储存结构和对数据的运算.
6. 数据结构的形式化和定义
7. 数据的逻辑结构
* 线性结构
* 树形结构
* 图形结构
* 集合
8. 数据的物理结构
* 顺序储存
> 连续的内存空间,相邻的元素在物理位置上也相邻(比如邻居)
* 链式储存
> 逻辑上相邻,物理上不一定相邻
* 索引储存
> 储存节点信息的同时,附加索引表
* 散列(哈希)储存
> 通过hash计算出节点的储存地址,是对顺序/链式的扩展
9. 数据的计算
10. 数据类型
11. 抽象数据类型
## 算法和算法的分析
数据结构 + 算法 = 程序
---
1. 算法
指令有限的,解题过程
2. 算法的特性
* 有穷性 -- 有穷的时间内完成
* 确定性 -- 相同输入得到相同输出
* 可行性 -- 可以实现
* 输入 -- 一个算法有零个或多个输入
* 输出 -- 一个算法有一个或多个输出
3. 算法描述
4. 设计目标
* 正确性
* 可实用性
* 可读性
* 健壮性-->异常处理
* 算法效率
5. 算法时间复杂度
6. 空间复杂度 加油{:1_921:}加油{:1_921:}加油{:1_921:} 加油,一起学习{:1_921:} 不错不错加油!! 你现在学习也不晚呀,关键是能否坚持,有的时候坚持太难了! 看楼主学习的第一天 我最近也在学数据结构和算法,当初上课不认真,现在想重新捡起了~用的Problem Solving with Algorithms and Data Structures using Python这本电子书,目前已到最后一章图的广度优先算法了:lol
页:
[1]