数据结构-线性表
lab104_yifan
这个作者很懒,什么都没留下…
展开
-
uva10152 ShellSort
uva10152 ShellSort题意:输入2个乌龟名字的序列, 把第一个输入序列变换为第二个序列变换的规则是乌龟只能从底往上爬且只能爬到顶不能插入中间。解法:把2个序列自下而上找匹配,若匹配,这两个序列同时往上找下一个名字,若不匹配则原序列往上找一个名字,直到原序列找到顶部,看看需变换的序列还有几个名字,把这几个名字自下而上输出即可。代码:#in原创 2013-07-09 08:19:25 · 1204 阅读 · 0 评论 -
UVA 514 - Rails(模拟)
514 - Rails题目链接题意:一个火车,一开是是有序的1-n车厢,给一个序列,问是否能通过轨道变换成该序列思路:栈模拟即可代码:原创 2014-07-27 01:27:47 · 1161 阅读 · 0 评论 -
UVA 11988 - Broken Keyboard (a.k.a. Beiju Text)
UVA 11988 - Broken Keyboard (a.k.a. Beiju Text)题目链接题意:给定一个文本,输入'['光标到开头,输入']'光标到结尾,问输入完之后对应的输出是什么思路:用链表搞,遇到'['就把指针指到链表头,遇到']'就指到链表尾,其他就在指针位置插入即可代码:#include #include #include #in原创 2014-07-26 12:43:01 · 919 阅读 · 0 评论 -
UVA 11995 - I Can Guess the Data Structure! (基本数据结构)
UVA 11995 - I Can Guess the Data Structure!题目链接题意:给定一堆的操作,问这个数据结构是什么思路:水题,稍微模拟一下就可以了代码:#include #include #include #include using namespace std;const int N = 1005;int n, q[N原创 2014-07-25 15:14:35 · 1160 阅读 · 0 评论 -
FZU 1894 (双端队列)
Problem 1894 志愿者选拔Accept: 1166 Submit: 3683Time Limit: 1500 mSec Memory Limit : 32768 KB Problem Description世博会马上就要开幕了,福州大学组织了一次志愿者选拔活动。参加志愿者选拔的同学们排队接受面试官们的面试。参加面试的同学们按照先来先面试原创 2013-12-04 21:08:46 · 1135 阅读 · 0 评论 -
UVA 540 Team Queue 题意很重要!!!!!
UVA 540 Team Queue题意是,有几个组的人,将他们排队,如果队列中有相同组的人,就可以插队到那些人后,如果没有,就排到队列末一开始题意理解错了,导致一直WA,坑爹啊。。。所以英语还是很重要的!解法 用数组模拟,没什么好说的。代码#include #include struct Q{ int el[1005]; int原创 2013-07-17 01:03:34 · 1282 阅读 · 0 评论 -
UVA 673 Parentheses Balance
UVA 673 Parentheses Balance题意就是判断左右括号是否匹配。用数组模拟栈,左括号就入栈,右括号遇到栈顶是对应的左括号,就将左括号出栈,否则就是NO,字符串结束后,若栈不为空,就NO。水过#include #include int n;char sb[205];char stack[205];int main(){ scanf("%d",原创 2013-07-17 01:01:17 · 1087 阅读 · 0 评论 -
UVA 101 The Blocks Problem
UVA 101 The Blocks Problem纯粹的模拟,,一开始题意理解错了 在POJ还过了,,换成UVA WA掉了 又改 才过的#include #include int n;char a[10], b[10];int aa, bb;int stack[255][255];int num[255];int x, y;int x2, y2;voi原创 2013-07-16 09:50:40 · 1051 阅读 · 0 评论 -
UVA 127 Accordian'' Patience
UVA 127 Accordian'' Patience题意:把一堆扑克牌,按照规则:如果左边1张或3张和它具有同花色或等级,把这张牌移到上面去,每次移动后,在从头开始移动,知道都移动完,输出剩余几堆与每堆牌数,如果1张牌有2个可以移动的地方,优先移动到左3位置。思路:用结构体存每一张牌,用栈来储存牌堆,每次判断能不能移动牌,每次移动后进行一次变换。代码:#include #in原创 2013-07-10 08:57:15 · 1204 阅读 · 0 评论 -
UVA 133 The Dole Queue
UVA 133 The Dole Queue题意 输入N,k,m,有N个人站成一圈, k表示一个官员每次按k个位置顺时针找人,m表示一个官员按m个位置逆时针找人每次找到的人就去除掉,并输出,直到没人。解法 用数组模拟,每次寻找进行一次数组的变换,直到人数为0代码#include using namespace std;#include #i原创 2013-07-09 08:29:39 · 1153 阅读 · 0 评论 -
uva442 Matrix Chain Multiplication
UVA 442题意:输入几个矩阵然后输入字符串,根据输出的字符串,判断矩阵相乘所需要计算的乘法次数思路:用栈的思想,用一个二维数组模拟栈,遇到左括号往上多一层,遇到右括号运算结果,保存到下一层中,计算到字符串末尾。每次计算结果,把乘法次数加上去,最后得到的就是总次数代码:#include using namespace std;#include #原创 2013-07-09 08:14:12 · 1373 阅读 · 0 评论 -
UVA 246 - 10-20-30 (模拟+STL)
UVA 246 - 10-20-30题目链接题意:给52张的扑克堆,先从左往右发7张牌,之后连续不断从左往右发7张牌,如果有牌堆形成了以下3种情况(按顺序判断):1、头两张+尾一张和为10或20或302、头一张+尾两张和为10或20或303、尾三张和为10或20或30就把这三张牌拿走,放到总牌堆底(这步要不断执行直到不再满足条件或牌堆没了)如果有一个牌堆因为这个原创 2014-07-27 01:00:20 · 3278 阅读 · 0 评论