
数据结构
AcToy
有志者 事竟成
展开
-
UVa 442 - Matrix Chain Multiplication
用结构体储存矩形的信息。然后想法和括号的想法相同。!=‘)’,则s.push。若==‘)’。则取出两个 s.top ( )。切记先取出的是第二个矩形。先进后出。然后比较两个的 行和列 然后计算。最后更新栈的top就是。计算后这个矩形的的 行 列 和 代号 ( 不知道叫什么好了 ) // File Name: UVa442.cpp // Author: Toy // Create原创 2013-03-28 21:04:21 · 421 阅读 · 0 评论 -
UVa 133 - The Dole Queue
双向循环队列。可以简化成单向队列。无非就是一个从左向右走K步输出。另一个从右往左走M步输出。如果两个走到同一位置则输出第一个。题不是很复杂。只不过输出的格式 很烦人。 思路:将所有数存在队列中。先遍历左边。指针front从0开始。如果front所指的数不为0,则tmp++。当tmp==K时。输出结果。tmp置为0.当指针front > Case时。指针在从最左边开始。将输出的位置置为0。从右遍原创 2013-04-01 18:28:30 · 861 阅读 · 0 评论 -
UVa 673 - Parentheses Balance
括号匹配。从头遍历。若输入的是“(”,“[”。将他们放入栈中。如果是“)”,或“]”。则判断栈是否为空。不为空。则看栈顶的元素。如果是“(”或“[”。则将栈顶元素弹出。 否则将tmp 置为 1.最后判断栈是否为空,为空切他们tmp = 0,则输出Yes。反之输出No。 // File Name: UVa673.cpp // Author: Toy // Created Time: 20原创 2013-03-26 19:30:58 · 557 阅读 · 0 评论 -
UVa 10050 - Hartals
题意给出了一共的天数。和party。用数组模拟就可以。记录days[i]的倍数。最后做mod 排除 周五 周六 // File Name: UVa10050.cpp // Author: Toy // Created Time: 2013年03月26日 星期二 20时52分02秒 #include #include #include #include #include #in原创 2013-03-26 21:21:09 · 624 阅读 · 0 评论 -
UVa 10152 - ShellSort
找规律。用两个数组分别存放乱序和正序的情况,并记录乱序的编号,讲编号给复给正序的,即第二组样历为 1 6 3 2 4 5 7 8 9 。然后反向遍历正序的数组。当出现 当前位置的序号小于它上一个的序号,则记录,然后从次位置开始遍历输出。 // File Name: UVa10152.cpp // Author: Toy // Created Time: 2013年04月17日 星期三 2原创 2013-04-17 21:59:11 · 550 阅读 · 0 评论 -
poj3481-Double Queue
根据优先值的大小,输出它所对应的节点,在建树的过程中,再加一个kk变量,找到优先值p的位置,输出kk即可 /************************************************************************* > File Name: 3481.cpp > Author: Ac_Toy > Mail: ycsgldy@163.原创 2013-07-16 11:45:36 · 803 阅读 · 0 评论 -
HNOI2004-宠物收养所
/************************************************************************* > File Name: hysbz1208.cpp > Author: Ac_Toy > Mail: ycsgldy@163.com > Created Time: 2013年06月21日 星期五 06时48分17原创 2013-07-16 11:37:43 · 1630 阅读 · 0 评论 -
NOI2004 - 郁闷的出纳员
就是维护一个有序的序列,对这个序列进行插入,删除,加和,查找第k大的数值,但值得注意的是,在插入的时候,如果他的工资起始就比工资下届底就不需要插入了,这表示他每到公司,也不算离开。删除的时候也要判断下,ss是否是起始的节点,如果是的话同样也不需要删除的操作 /*****************************************************************原创 2013-07-16 15:21:41 · 617 阅读 · 0 评论 -
HNOI2002 - 营业额统计
找出比num小的最大数和比num大的最小数,然后计算差值和最小。只是两个查找的过程,和插入的过程,结果在控制a, b的位置wa了N次, /************************************************************************* > File Name: HNOI2002.cpp > Author: Ac_Toy >原创 2013-07-16 14:19:56 · 718 阅读 · 0 评论