Python数据结构与算法分析(一、导论)
导论
数据类型、数据结构、算法
数据类型:数据类型是一个值的集合和定义在这个值上的一组操作的总称。
| 计算机中的所有数据实例均为二进制表达,为了赋予这些数据实际意义,必须要有数据类型,它能够帮助我们理解二进制数据的含义,从而能够从问题本身角度出发看待数据。不同的编程语言数据类型或组织形式有些许差异,但大部分编程语言都为整数、浮点数、字符串等提供了相应的数据类型。 |
|---|
- int,float:标准的数学运算 + - * / 以及 ** 括号和取模等
- bool:只有两个状态位 True 和 False,主要用于逻辑运算,and,or,not;关系运算 > < == !=
- str:由零个或多个字母、数字、或其他符号组成的有序集合
- list:列表是一系列元素的有序集合,并为其每个元素都分配索引;列表可增删改
- tuple:元组为不可变序列,其一旦被创建,元素便不可更改
- set:集合是一个无序的不重复元素序列,其内部元素不重复,元素没有索引;集合中的元素不可改变,但集合可改变
- dict:字典也为无序结构,由相关的元素对构成,元素对由键和值构成
数据结构:相互之间存在联系或关系的数据元素的集合,也即数据的存储、组织的方式。

| 数据的存储组织结构,顾名思义,就是将我们所获得的数据进行合理的组织存储,以方便我们进行数据的处理。如果我们要存储这样一组家庭的族谱关系表:{爷爷,父亲,大伯,姑姑,姐姐,张三},若使用列表或集合进行存储,计算机仍可以执行,但是无法体现其数据之间的关系,处理数据的复杂度也会提高,如果使用树的结构进行组织存储,则元素之间的关系便一目了然。 |
|---|
算法:解决某种问题的计算过程。其中涉及到数据结构、计算方法等,算法的不同,其解决问题的复杂程度也不同。
小结
- 计算机科学利用抽象这一工具表示过程和数据
- 抽象数据类型通过隐藏数据的细节来使程序员能够管理问题的复杂度
- 类使得程序员能够实现抽象数据类型
浙公网安备 33010602011771号