python数据结构1
1.理解数据结构的重要性
2.对数据结构进行分类
3.定义堆栈、队列、树和图
4.定义算法并欣赏算法的特性
5.理解抽象数据类型
6.区分迭代算法和递归算法
7.实现冒泡排序、选择排序、合并和合并排序
数组:
数组由位于连续内存位置的同类元素组成。
堆栈:
堆栈是遵循后进先出原则的线性数据结构(后进先出)
push(item):在堆栈顶部插入“item”
pop():从堆栈中取出一个元素
isfull():如果堆栈已满,则返回true
isempty():如果堆栈为空,则返回true
overflow():如果引发溢出异常,则返回true
underflow():如果引发下溢异常,则返回true
可以由数组和链表来实现。
队列:
队列是遵循先进先出原则的线性数据结构先出(FIFO)。
图:
一个图可以定义为G = (V, E),其中V是一个有限的、非空的顶点集,E是一个有限的、非空的边集。E的每个元素是(x, y)其中x和y属于顶点集合。
树:
树是一个没有任何循环或孤立顶点或边的图。
树是图形,属于非线性数据结构的范畴。它们广泛用于搜索、排序、查找最小生成树以及解决计算机科学领域的一些最重要的问题。
算法:
完成特定任务所需的一组步骤称为算法。虽然实现特定任务的方法有很多,但是算法设计者必须寻找最有效的方法;包括空间和时间。但是,这种效率不能以牺牲正确性为代价。此外,算法的每个语句必须是明确的。
算法的特点:
正确性
明确性
有效性
有穷性