文章目录
Data Structure and Algorithm with Python.
数据结构(Data Structure) 描述了数据的存储方式。Python的内置数据结构包括列表(list)、元组(tuple)、字典(dictionary)等。我们需要自己定义实现python内没有定义的扩展数据结构。
抽象数据类型(Abstract Data Type) 是指把数据类型和数据类型上的运算封装在一起。
最常用的数据运算:插入、删除、修改、查找、排序。
- 时间复杂度
- 线性表(顺序表 + 链表)
- 栈
- 队列
- 排序
- 搜索
- 树
1. 时间复杂度
衡量一个算法的优劣,单看运行时间是不可靠的;程序的运行离不开计算机环境(包括硬件与操作系统)。
假设计算机执行算法时每一个基本操作的时间是单位时间;对于不同的机器环境,单位时间是不同的,但是对于算法执行多少个基本操作在规模数量级上是相同的。
大O记法(big-O):对于单调整数函数f,如果存在一个整数函数g和正实数c,使得对充分大的n总有 f ( n ) ≤ c g ( n ) f