栈和队列
文章平均质量分 74
Sunmh_AC
这个作者很懒,什么都没留下…
展开
-
线性时间Huffman算法 SDUT 1987
题目描述在一个操场的四周摆放着n 堆石子。每堆的石子数不超过10*n。现要将石子有次序地合并成一堆。规定每次只能选2 堆石子合并成新的一堆,合并的费用为新的一堆的石子数。试设计一个线性时间算法,计算出将n堆石子合并成一堆的最小总费用。对于给定n堆石子,计算合并成一堆的最小总费用。输入输入数据的第1 行是正整数n,表示有n堆石子。第2 行有n个数,分别表示每堆石子的个数。n≤10原创 2015-08-24 08:18:27 · 532 阅读 · 0 评论 -
SDUT 数据结构实验之栈六:下一较大值(二)
题目描述对于包含n(1输入输入有多组,第一行输入t(1<=t<=10),表示输入的组数;以后是 t 组输入:每组先输入n,表示本组序列的元素个数,之后依次输入本组的n个元素。输出输出有多组,每组之间输出一个空行(最后一组之后没有);每组输出按照本序列元素的顺序,依次逐行输出当前元素及其查找结果,两者之间以-->间隔。示例输入24 12 2原创 2015-10-17 11:04:15 · 1983 阅读 · 0 评论 -
传说中的数据结构 SDUT 2556
题目描述 在大学里学习了一个学期了,大家大都对所学的专业有了基本的了解。许多同学也已经知道了到大二要开一门课叫做《数据结构》,那么今天给你们提前讲一下一个最简单的数据结构:栈。 栈的基本操作有3种:push,pop,top。例如,给你一个数列:1 2 3 4 push:向栈中加入一个数,比如push 5,数列就变成1 2 3 4 5。pop:从栈中删除最后面的数,比如 p原创 2015-08-18 15:26:25 · 611 阅读 · 0 评论 -
数据结构实验之栈二:一般算术表达式转换成后缀式 SDUT 2132
题目描述对于一个基于二元运算符的算术表达式,转换为对应的后缀式,并输出之。输入输入一个算术表达式,以‘#’字符作为结束标志。输出输出该表达式转换所得到的后缀式。示例输入a*b+(c-d/e)*f#示例输出ab*cde/-f*+转的,解释的挺详细。#includeint swi(char c))//把输入的运算符转换成数字来比较优先级转载 2015-08-17 10:53:25 · 506 阅读 · 0 评论 -
完美网络 SDUT 2506
题目描述完美网络是连通网络的基础上要求去掉网络上任意一条线路,网络仍然是连通网络。求一个连通网络要至少增加多少条边可以成为完美网络。输入第一行输入一个数T代表测试数据个数(T(0 输出对于每个样例输出最少增加多少线路可以成为完美网络。每行输出一个结果。示例输入23 11 23 21 22 3示例输出21原创 2015-08-05 14:55:03 · 709 阅读 · 0 评论 -
数据结构实验之栈三:后缀式求值 SDUT 2133
题目描述对于一个基于二元运算符的后缀表示式(基本操作数都是一位正整数),求其代表的算术表达式的值。输入输入一个算术表达式的后缀式字符串,以‘#’作为结束标志。输出求该后缀式所对应的算术表达式的值,并输出之。示例输入59*684/-3*+#示例输出57提示基本操作数都是一位正整数!运用栈的思想很简单#include原创 2015-08-05 10:42:17 · 389 阅读 · 0 评论 -
refresh的停车场 SDUT 2088
题目描述 refresh最近发了一笔横财,开了一家停车场。由于土地有限,停车场内停车数量有限,但是要求进停车场的车辆过多。当停车场满时,要进入的车辆会进入便道等待,最先进入便道的车辆会优先进入停车场,而且停车场的结构要求只出去的车辆必须是停车场中最后进去的车辆。现告诉你停车场容量N以及命令数M,以及一些命令(Add num 表示车牌号为num的车辆要进入停车场或便道,Del 表示停车场原创 2015-07-30 20:52:20 · 669 阅读 · 0 评论 -
双向队列 SDUT 1466
题目描述 想想双向链表……双向队列的定义差不多,也就是说一个队列的队尾同时也是队首;两头都可以做出队,入队的操作。现在给你一系列的操作,请输出最后队列的状态;命令格式:LIN X X表示一个整数,命令代表左边进队操作;RIN X 表示右边进队操作;ROUTLOUT 表示出队操作;输入第一行包含一个整数M(M以下M行每行包含一条命原创 2015-07-31 09:42:08 · 1004 阅读 · 0 评论 -
数据结构实验之栈四:括号匹配 SDUT 2134
题目描述 给你一串字符,不超过50个字符,可能包括括号、数字、字母、标点符号、空格,你的任务是检查这一串字符中的( ) ,[ ],{ }是否匹配。输入 输入数据有多组,处理到文件结束。输出 如果匹配就输出“yes”,不匹配输出“no”示例输入sin(20+10){[}]示例输出yes#include#include原创 2015-08-13 17:31:57 · 673 阅读 · 0 评论 -
树-堆结构练习——合并果子之哈夫曼树 SDUT2127
树-堆结构练习——合并果子之哈夫曼树Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。多多决定把所有的果子合成一堆。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过n-1原创 2015-08-01 20:29:31 · 844 阅读 · 0 评论 -
C++与Java SDUT 1463
题目描述按照Java的命名规范,由一个多个单词构成的变量名的命名规则为:第一个单词的开头为小写字母,其余单词都以大写字母开头,单词与单词之间不加任何分隔符,除了单词的首字母之外的其他字母一律使用小写。例如:name、myName。而C++的命名则全部使用小写字母,在单词和单词之间使用“_”来作为分隔符。例如:name、my_name。 你的任务就是写一个程序把按照C++的命名原创 2015-08-12 14:38:54 · 340 阅读 · 0 评论 -
Fence Repair POJ 3253
DescriptionFarmer John wants to repair a small length of the fence around the pasture. He measures the fence and finds that he needsN (1 ≤ N ≤ 20,000) planks of wood, each having some integer le原创 2015-08-26 09:19:33 · 446 阅读 · 0 评论 -
数据结构实验之栈八:栈的基本操作 SDUT
题目描述堆栈是一种基本的数据结构。堆栈具有两种基本操作方式,push 和 pop。Push一个值会将其压入栈顶,而 pop 则会将栈顶的值弹出。现在我们就来验证一下堆栈的使用。输入 首先输入整数t(1<=t<=10),代表测试的组数,以后是 t 组输入; 对于每组测试数据,第一行输入两个正整数 m(1输出 对于每组测试数据,根据其中原创 2015-10-11 16:40:25 · 1473 阅读 · 0 评论