-
下列情况中,不能使用栈(stack)来解决问题的是?
A. 将数学表达式转换为后辍形式 B. 实现递归算法 C. 高级编程语言的过程调用 D. 操作系统分配资源(如CPU) ×
资源分配有多种分配策略,简单的可以是任务先到先执行,可以使用队列来完成
-
下列关于堆和栈(以 C++ 语言来说)的区别描述错误的有?
A. 申请方式的不同,堆是系统自动分配,栈是自己申请 × B. 栈的大小是固定的,堆的大小受限于系统中有效的虚拟内存 C. 栈的空间由系统决定何时释放,堆需要自己决定何时去释放 D. 堆的使用容易产生碎片,但是用起来最方便
1.栈内存操作系统来分配,堆内存由程序员自己来分配。
2.栈有系统自动分配,只要栈 剩余空间大于所申请空间,系统将为程序提供内存,否则将报异常提示栈溢出。 -
解析XML时,需要校验节点是否闭合,如必须有与之对应,用()数据结构实现比较好
栈是解决封闭对应问题的有效方法。
比如在解析XML中,遇到一个标签(左标签)就入栈,遇到其子标签的左标签(如)同样入栈。遇到右标签(如或)就校验栈顶标签是否与该右标签对应,能对应就出栈,不能对应则说明标签不对称,是无效的XML文件 -
设栈的输入序列为 123……n ,输出序列为 a1,a2,a3,……,an ,若存在 1<=k<=n ,使得 ak=n ,则当 k<=i<=n 时, ai 为 。
不确定
【牛客专项练习】数据结构—栈
最新推荐文章于 2022-11-23 21:42:55 发布