随笔分类 -  数据结构(严蔚敏)的分类——第三章栈和队列

摘要:3.6案例分析和实现 案例3.1:数制的转换 1.案例分析 当将一个十进制整数N转换为八进制数时,在计算过程中,把N与8求余得到的八进制数的各位依次进栈,计算完毕后将栈中的八进制数依次出栈输出,输出结果就是待求得的八进制数 2.算法步骤 1、初始化一个空栈S。 2、当十进制数N非零时,循环执行以下操 阅读全文
posted @ 2022-02-10 16:41 阅读(119) 评论(0) 推荐(0) 编辑
摘要:3.5.3 链队-队列的链式表示和实现 链队是指采用链式存储结构实现的队列。通常链队用单链表来表示,如图所示。一个链队显然需要两个分别指示队头和队尾的指 针(分别称为头指针和尾指针)才能唯一确定。这里和线性表的单链表一样,为了操作方便起见,给链队添加一个头结点,并令头指针始终指向头结点。 1.队列的 阅读全文
posted @ 2022-02-10 16:39 阅读(95) 评论(0) 推荐(0) 编辑
摘要:3.5.队列的表示和操作的实现 3.5.1队列的类型定义 1.队列的抽象数据类型定义 ADT 队列 (Queue) Data 同线性表。元素具有相同的类型,相邻元素具有前驱和后继关系 。 Operation InitQueue(*Q) :初始化操作,建立一个空队列Q。 DestroyQueue(*Q 阅读全文
posted @ 2022-02-10 16:37 阅读(39) 评论(0) 推荐(0) 编辑
摘要:3.4栈与递归 3.4.1采用递归算法解决的问题 1.递归的定义: 若一个对象部分地包含它自己, 或用它自己给自己定义, 则称这个对象是递归的; 若一个过程直接地或间接地调用自己, 则称这个过程是递归的过程。 long Fact ( long n ) { if ( n == 0) return 1; 阅读全文
posted @ 2022-02-10 16:35 阅读(32) 评论(0) 推荐(0) 编辑
摘要:3.3.3链栈的表示和实现 定义: 链栈是指采用链式存储结构实现的栈。通常链栈用单链表来表示。链栈的结构与单链表的结构相同 在此用StackNode来表示,定义如下: typedef struct StackNode { SElemType data; struct StackNode* next; 阅读全文
posted @ 2022-02-10 16:33 阅读(24) 评论(0) 推荐(0) 编辑
摘要:3.1栈和队列的定义和特点 3.1.1栈的定义和特点 1定义: ​ 栈是限定仅在表尾进行插入或者删除操作的线性表。因此,对于栈来说,表尾端有其特殊含义,称为栈顶,相应的,表头端称为栈底。不含元素的空表称为空栈。 2.特点: ​ 先进后出(FILO) 3.存储结构: ​ 顺序栈和链式栈,实际上栈的本质 阅读全文
posted @ 2022-02-10 16:26 阅读(149) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示