小心这些“坑爹”的育儿知识.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
小心这些“坑爹”的育儿知识

第3章 栈和队列 要求: 了解栈的定义及特点,掌握栈表示和实现,重点是栈初始化、判断栈空和栈满、出栈和入栈操作;(注意栈顶的约定) 栈的应用举例,重点是表达式求值;(了解波兰式、逆波兰式、中缀式等概念) 栈与递归的实现;(系统工作栈) 了解队列的定义及特点,掌握队列的表示和实现,重点是队列初始化、判断队空和队满、出队和入队操作;难点:循环队列。 (离散事件模拟不要求) 第3章 栈和队列 栈和队列是两种特殊的线性表,是操作受限的线性表,称限定性DS 3.1 栈(stack) 栈的定义和特点 定义:限定仅在表尾进行插入或删除操作的线性表,表尾—栈顶top,表头—栈底bottom,不含元素的空表称空栈 特点:先进后出(FILO)或后进先出(LIFO) 栈的表示和实现 顺序栈 一维数组s[M] 或先分配一个基本容量,逐段扩大,动态数组 算法描述 InitStack, DestroyStack, ClearStack, StackEmpty, StackLength, GetTop, Push, Pop, StackTraverse 链栈 3.2 栈的应用举例 数制转换 N = (N div d)x d + N mod d 算法 3.1 P48 计算过程 - 入栈 打印过程 - 出栈 void conversion (int Num) { // 算法3.1 // 对于输入的任意一个非负十进制整数,打印输出与其等值的八进制数 InitStack(S); // 构造空栈 while (Num) { Push(S, Num % 8); Num = Num/8; } while (!StackEmpty(S)) { Pop(S,e); printf (%d, e); } printf(\n); } // conversion OperandType EvaluateExpression( ) { // 算法3.4 算术表达式求值的算符优先算法。 // 设OPTR和OPND分别为运算符栈和运算数栈,OP为运算符集合。 InitStack (OPTR); Push (OPTR, #); InitStack (OPND); c = getchar(); while (c!= # || GetTop(OPTR)!= #) { if (!In(c, OP)) {Push(OPND, c); c=getchar();} // 不是运算符则进栈 else switch (precede(GetTop(OPTR), c)) { case : // 栈顶元素优先权低 Push(OPTR, c); c=getchar(); break; case =: // 脱括号并接收下一字符 Pop(OPTR, x); c=getchar(); break; case : // 退栈并将运算结果入栈 Pop(OPTR, theta); Pop(OPND, b); Pop(OPND, a); Push(OPND, Operate(a, theta, b)); break; } // switch } // while return GetTop(OPND); } // EvaluateExpression 3.3 栈与递归的实现 Tower of Hanoi问题 问题描述:有A,B,C三个塔座,A上套有n个直径不同的圆盘,按直径从小到大叠放,形如宝塔,编号1,2,3……n。要求将n个圆盘从A移到C,叠放顺序不变,移动过程中遵循下列原则: 每次只能移一个圆盘 圆盘可在三个塔座上任意移动 任何时刻,每个塔座上不能将大盘压到小盘上 3.4 队列 (Queue) 队列的定义及特点 定义:队列是限定只能在表的一端进行插入,在表的另一端进行删除的线性表 双端 队尾(rear)——允许插入的一端 队头(front)——允许删除的一端 队列特点:先进先出(FIFO) 链队列 - 队列的链式表示和实现 结点定义 队列的顺序存储结构 实现:用一维数组实现sq

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档