/**
* 数据结构的三个方面:
*
* 1.数据的逻辑结构 包括:
* <1> 线性结构 : 线性表、栈、队列。
* <2> 非线性结构 :树形结构、图形结构。
*
* 2.数据的存储结构 :顺序存储、链式存储。
*
* 3.数据的运算:检索、排序、插入、删除、修改等。
*/
/* <二> 栈(stack)
* <1>通常称插入删除的这一端为栈顶,另一端为栈底。
* <2>栈是限制仅在表的一端进行插入和删除运算的线性表。
* <3>栈是后进先出的线性表。简称LIFO表。
* <4>push()进栈,pop() 出栈
* <5>栈的存储结构:
* 1.顺序存储
* 顺序栈就是采用顺序存储结构来实现,即利用一组地址连续的存储单元依次存放堆栈中的数据元素.
* 2.链式存储
* 链栈即采用链表作为存储结构的实现的栈。
* */
/*<三> 队列(queue) 是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表
* <1>允许删除的一端称为队头。
* <2>允许插入的一端称为队尾。
* <3>当队列中没有元素的时候称为空队列。
* <4>队列是先进先出的线性表。简称FOFO表。
* <5>队列的修改是根据先进先出的原则的。新来的成员总是加在队尾,每次离开的总是队头上的。
* <6>EnQueue():入队; DeQueue():出队。
* <7>队列的存储结构“
* 1.顺序存储
*
* 2.链式存储
* */
/*<四> 树是由一个集合以及在该集合上定义的一种关系组成的
* <1>二叉树
* */
/*五> 图是一种较线性结构和树结构更为复杂的数据结构,在图结构中数据元素之间的关系可以是任意的,
* 图中任意两个数据元素之间都可以能相关。
* */
/*<六> 查找 */
/*<七> 排序
* <1>插入类排序
* 1.直接插入排序
* 2.折半插入排序
* 3.希尔排序
* <2>交换类排序
* 1.起泡 排序
* 2.快速排序
* <3>选择类排序
* 1.简单选择排序
* 2.树型选择排序
* 3.堆排序
* <4>归并排序
* <5>在线性时间内排序
* 1.计数排序
* 2.基数排序
* */