引言
数组是前面介绍排序和二分查找用的数据存储结构,和后面要遇到学习的其他结构(链表、树等等)一样,都适合用于数据库应用中作数据记录。这些数据结构便于数据的访问:它们易于进行插入、删除和查找特点数据项的操作。
本篇讲的数据存储类型是栈、队列甚至优先级队列中---栈。这三种数据存储类型它们主要作为构思算法的辅助工具,而不是完全的数据存储工具。这些数据机构的生命周期比那些数据库类型的结构要短的多。在程序操作执行期间它们才被创建,通常用它们去执行某项特殊的任务;当完成任务之后,它们就被销毁。
栈
栈主要机制可以用数组来实现,本篇实例就是这样处理的,但是也可以用链表来实现。栈只允许访问一个数据项:即最后插入的数据项。移除这个数据项后才能访问倒数第二个插入的数据项,依次类推。这种机制在不少编程环境中都很有用。
栈先进后出(后进先出),如下图:
以下就是栈简单实现: