![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构基础 - 线性表
文章平均质量分 66
buxizhizhou530
这个作者很懒,什么都没留下…
展开
-
UVa 133 救济金发放
题意:所有n个人围成一个圈,#include#includestruct Node{ int data; Node *next; Node *prior; };Node* CreateList(Node* &head, int n);Node* searchk(Node *ptr, Node* &head, int k);Node* rsearchm(Node原创 2014-05-05 23:07:48 · 1100 阅读 · 0 评论 -
UVa 10152 龟壳排序
思路:先读入的一列是原始串,后读入的一列是目标串。最少操作次数的方式是,从下到上,只对原始串进行删除而不放到最上面能得到的目标串的以最下元素开头的最长子串,然后将目标串剩余的那些按序放在最上方,即按由下到上的顺序输出即可。Code://#define LOCAL#include#include#includechar name[210][90];char target[210]原创 2014-05-11 00:42:00 · 1535 阅读 · 0 评论 -
UVa 673 括号平衡
思路:简单的匹配操作,利用栈。Code:#include#includechar stack[135];int main(){ int n; scanf("%d",&n); getchar(); while(n-->0) { memset(stack,0,sizeof(stack)); char c; int top=0; int flag=1;原创 2014-05-11 00:46:34 · 1547 阅读 · 0 评论 -
UVa 11111 一般Matrioshka 及 scanf 处理一行
题目:nest,嵌套思路:思路想通了其实很简单:将负数压栈,遇到输入正数时,检查栈顶元素,如果栈顶是正数,则出栈,一直检查栈顶元素直到栈顶是负数,判断该数和栈顶负数是否为相反数,并判断出栈的那些正数之和是否小于该输入的正数(这个是满足题目中的相加小于m的条件)。如果满足,则栈顶负数出栈,输入的正数入栈。这样循环到最后,如果一直匹配则最后栈中只剩一个元素。 思路很清晰,但实现起来比较麻烦,原创 2014-05-12 17:14:59 · 1140 阅读 · 0 评论 -
UVa 442 矩阵链乘及scanf说明符中的\n
题目:计算题给矩阵相乘次序所需的相乘次数。 我们已知的m*n和n*k矩阵相乘,得到的是m*k矩阵,但需要的相乘次数是m*n*k(开始当成了m*k %>_思路:每个矩阵用结构体表示,有名字、行、列、需要计算的次数。矩阵相乘的过程用栈来模拟。遇到左括号(,压栈这是自然的。遇到一个矩阵时,检查栈顶,如果栈顶元素是左括号,则压栈,否则就是矩阵,则比较栈顶矩阵和输入矩阵是否匹配,如果匹配则修改栈顶矩原创 2014-05-12 16:05:40 · 944 阅读 · 0 评论 -
UVa11234 表达式
题意:题目意思是给出后缀表达式,可以通过栈来计算表达式的值,即转化为中缀表达式。然后如果现在不用栈,而是用队列来操作,即每遇到一操作符时,进行两次pop和一次push。(这里注意,先pop出来的作为第二操作数,操作符假设是不满足交换律和结合律的)因为队列的pop和push,与栈的不同么,所以,问队列的输入应该是怎样的,才能和给定的输入用栈来计算,所得值相同。(即转化为相同的中缀表达式)思路:先原创 2014-08-24 00:38:49 · 1170 阅读 · 0 评论 -
UVa 540 小团体队列
题意:队列中有小团体(队列)。当入队时,如果有该团体的元素在队列中,则新元素排到该团体的尾部,否则排到队列的尾部。出队时和正常的一样,队首元素出列。思路:这个用STL很好模拟,用纯C的话,很直接会想到用二维数组来做,每个团体是其中的一个一维数组,最多再开一个数组来对小团体编号进行排队。但是当时没有看到题目中说的每个团体最后有1000个元素,这样的话我以为要开1000X200000的数组,忒大了原创 2014-08-25 13:20:54 · 1379 阅读 · 0 评论 -
UVa 10050 罢工
题意:就是给定一个范围的时间段,第一天是周日,然后周五周六是不会罢工的。有几个党派,他们会每个hi天发起罢工,每个党派有一个hi值。这样,求给定天数中的罢工天数。思路:从1到n循环天的编号,如果是周五周六(模7等于6或0),则不罢工;如果是其中某个hi的倍数,则必罢工。这个应该是水题了吧。。虽然开始可能会想到计数问题那个复杂的东西~Code:#includeint main()原创 2014-08-25 13:25:17 · 801 阅读 · 0 评论