数据结构
文章平均质量分 79
果冻虾仁
这个作者很懒,什么都没留下…
展开
-
老师布置的一道基础的关于栈的操作题
试写一个算法,识别依次读入的一个以@为结束答的字符序列是否为形如“序列1&序列2”模式字符序列。其中序列1和序列2中都不含字符“&”,且序列2是序列1的逆序列。例如,“a+b&b+a”是属该模式的字符序列,而“1+3&3-1”则不是。(提示:可以先让&序号前的前栈,然后让后面的字符依次与出栈后的元素对比,还是利用了栈先进后出的思想,如果中间每个字符都相同,并且最后栈是空的,而可以说是一个的模式。可原创 2013-04-10 22:52:07 · 1134 阅读 · 0 评论 -
huffman树入门
这段代码是对数学结构课本上的huffman树的一个简单优化。基本操作不变,对于一些错误进行了更正。并且化繁为简,改掉了一些冗长的代码。并且在个别地方进行修改,且对重要之处加以注释,以增强代码的可读性。配了一张自己做的小图。参考书目《数据结构(c语言版)》中国水利水电出版社 主编:赵坚#include "stdio.h"#include "stdlib.h"#define m 1原创 2013-05-20 13:07:57 · 1076 阅读 · 0 评论 -
hdu1072 BFS初体验
算是第一次写BFS吧。原创 2014-04-12 20:36:19 · 2321 阅读 · 0 评论 -
hdu1237简单计算器
简单计算器Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10383 Accepted Submission(s): 3345Problem Description读入一个只包含 +, -, *, /原创 2013-06-01 09:48:24 · 1447 阅读 · 0 评论 -
链表基础操作及其逆置
纠结了很久的一道链表题。果然我数据结构学得好渣。就结了大约两个星期。最后提交作业的时间都截止了,还没交,再交的时候过期了,交不了了。只好跟老师说声,然后她又改了时间。最后总结出了是我的指针和结构体学得不好额。哎,谁让学校只教了我们半本C语言。。。还得靠自学。其实就算是交了前半本C,我当时学得也是渣的可以。那半本还不都是后来假期每天敲代码的时候掌握的。。#include #incl原创 2013-04-10 23:02:30 · 1014 阅读 · 0 评论 -
【openjudge】数字统计
总时间限制: 1000ms 内存限制: 100000kB描述输入n个整数,统计每个数出现的次数.输入第一行是一个整数n(1输出第一行输出总共有多少个不同的整数.接下来每行输出一个整数及这个整数出现的次数,用空格分隔.输出的整数的顺序与它们在输入中第一次出现的顺序一致(即在输入中先出现的数,也会在输出中先出现)样例输入523212样例输出3原创 2013-04-28 22:05:39 · 1803 阅读 · 0 评论 -
hdu1301 Jungle Roads
Jungle RoadsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 3546 Accepted Submission(s): 2551Problem DescriptionThe Head原创 2013-07-26 16:22:06 · 1896 阅读 · 0 评论 -
hdu1879浙大计算机研究生复试上机(2008)继续畅通工程
继续畅通工程Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 10079 Accepted Submission(s): 4399Problem Description省政府“畅通工程”的目标是使全省原创 2013-07-24 23:54:37 · 1899 阅读 · 0 评论 -
hdu3371 Connect the Cities
Connect the CitiesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 6362 Accepted Submission(s): 1838Problem DescriptionIn 21原创 2013-07-25 11:35:15 · 2351 阅读 · 0 评论 -
hdu1233浙大计算机研究生复试上机考试(2006)还是畅通工程
还是畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 19512 Accepted Submission(s): 8679Problem Description某省调查乡村交通状况,得到的统计表中原创 2013-07-24 14:28:31 · 1515 阅读 · 0 评论 -
Qt计算器开发(一):后缀表达式实现完整数学表达式的计算
相信学过数据结构的人都听说过后缀表达式,就是在学习栈的时候。相信大家也都用过计算器windows里面的calc。但是有没发现它只能单步计算,而不能一次计算一个表达式。后缀表达式就有了用武之地,可以一次性计算一整个个式子。科技要为生产服务,所以我就实际去做了一个依据后缀表达式的带有图形化界面的计算器。原创 2014-04-28 17:51:17 · 8504 阅读 · 2 评论 -
浙大计算机研究生复试上机考试(2010)——二叉搜索树(hdu3791)
【静态链表解二叉搜索树 】用静态链表(数组)去解这道二叉搜索树的题目。无需使用链表、指针,无需自定义结点类型,操作简单。仅仅是将空间上的二叉搜索树映射到一维数组上。原创 2014-05-19 15:49:21 · 2072 阅读 · 2 评论 -
hdu1166树状数组
这道题做了很多次了,从上个学期第一次见到,就想着用暴力模拟的方法去做。。。超时。。。暑假的时候学会了线段树,又做了几次。。。超时。。。。这次终于开始研究树状数组了。。不过前几次也是超时,最后把cin,改成了scanf才水过。。。。。传送门:敌兵布阵#include #include #include //本来是想顺便练习下STL,才使用的vector。不过最后也没有用到vector原创 2013-09-07 21:23:25 · 1409 阅读 · 0 评论 -
hdu1325 Is It A Tree?并查集
hdu1325和另外一道hdu1272.题意基本一致。但是由于数据不同,所以解法也不尽相同。hdu1272可以不使用并查集水过,但这道就必须利用并查集了,用来判断是否是多个树。此外还要判断是否为有环,也就是入度不能大于1.原创 2014-04-24 07:36:26 · 2457 阅读 · 0 评论 -
hdu1754 I Hate It
传送门 AC的第一个线段树的题目,但不是做的第一个线段树题目。原来做过一两道吧,杭电上有一道,不过线段树超时了。。要用树状数组做,所以一直还没AC这道题目写代码的时候,让我对于二分,和递归这两个重要思想都有了比较清晰的认识。二分呢,一定要确定好两个部分的边界。决不能重复边界。递归呢,注意递归分为迭代(从上到下)和回溯(从下到上)两个过程的。我们经常忽略第二个过程。#incl原创 2013-08-14 23:09:06 · 1216 阅读 · 0 评论 -
浙大计算机研究生复试上机考试2005年 A+B
A + BTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10502 Accepted Submission(s): 6043Problem Description读入两个小于100的正整数A和B,计算A+原创 2013-08-12 13:38:09 · 1587 阅读 · 0 评论 -
hdu1425
sortTime Limit: 6000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 22164 Accepted Submission(s): 6650题意为:给你n个整数,请按从大到小的顺序输出其中前m大的数。每组测试数据有两行,第一行原创 2013-08-11 23:37:44 · 1303 阅读 · 0 评论 -
单向链表的查询【openjudge】
总时间限制: 2ms 内存限制: 1024kB描述创建一个链式存储的线性表,要求找出该链表中值为x的元素有多少个?输入输入若干整数,以0结束。再输入x的值输出x在链表中出现的次数样例输入3 2 3 3 5 8 5 3 03样例输出4提示本题只有一组测试数据,不需要重复这答题咋一看挺水。但是对我而言还是发现了许多问题。原创 2013-04-25 20:15:58 · 1412 阅读 · 0 评论 -
两个顺序链表的合并【openjudge】
总时间限制: 2ms 内存限制: 1024kB描述已知两个线性单链表A和B中的元素以递增有序排列(数据长度和元素由键盘输入),编写算法将A表和B表归并成一个按元素值递增的有序表C,并要求利用原表(即A和B表的)节点空间存储表C。再输入链之前,先要输入链的长度样例输入61 3 6 7 12 135-1 3 8 10 15 样例输出-1 1 3 3 6 8原创 2013-04-27 13:36:23 · 1387 阅读 · 0 评论 -
建立二叉树A【openjudge】
总时间限制: 1000ms 内存限制:65535kB描述给出一颗二叉树根节点到各叶子节点的路径,建立这颗二叉树,输出中序遍历的结果。输入第一行输入一个整数t,代表测试数据的组数。对于每组测试数据,第一行输入一个整数n,代表二叉树根节点到各叶子节点的路径数目。随后输入n行,每行包含一个字符串S, 代表从根节点走向对应叶子节点的路径。路径中每个节点用原创 2013-05-12 23:33:45 · 1415 阅读 · 0 评论 -
BST二叉查找树的实现与操作
教学视频地址原文来自猎豹网校#include #include typedef struct Node{ int data; struct Node *lchild; struct Node *rchild;}BiTreeNode,*BiTree;BiTree BSTSearch(BiTree T,int x){ BiTreeNode *p; if(T转载 2013-05-14 19:25:47 · 1575 阅读 · 1 评论 -
hdu1870愚人节的礼物
愚人节的礼物Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3218 Accepted Submission(s): 1980Problem Description四月一日快到了,Vayko想了个愚人的原创 2013-05-31 20:36:35 · 1655 阅读 · 2 评论 -
Phone List
Phone ListTime Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7094 Accepted Submission(s): 2434Problem DescriptionGiven a lis原创 2013-07-28 19:24:27 · 1742 阅读 · 0 评论 -
人见人爱A-B(链表的算法实现)
人见人爱A-BTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 32586 Accepted Submission(s): 9070Problem Description参加过上个月月赛的同学一定还记得其原创 2013-04-30 17:09:39 · 1236 阅读 · 0 评论 -
Hat’s Words
Hat’s WordsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5620 Accepted Submission(s): 2091Problem DescriptionA hat’s word原创 2013-07-30 13:17:18 · 1320 阅读 · 0 评论 -
浙大研究生复试上机考试2005——畅通工程
畅通工程Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 22181 Accepted Submission(s): 11553Problem Description某省调查城镇交通状况,得到现有城镇道路统计表,表中原创 2013-07-22 18:21:32 · 1505 阅读 · 0 评论 -
Dragon Balls
Dragon BallsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1646 Accepted Submission(s): 668Problem DescriptionFive hundred yea原创 2013-07-23 17:40:31 · 1206 阅读 · 0 评论 -
hdu1412{A} + {B}
{A} + {B}Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 8410 Accepted Submission(s): 3438Problem Description给你两个集合,要求{A} + {B}.原创 2013-03-18 17:58:54 · 1253 阅读 · 0 评论 -
Constructing Roads*
Constructing RoadsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 10700 Accepted Submission(s): 3989Problem DescriptionThere原创 2013-07-25 21:35:58 · 1344 阅读 · 0 评论 -
详解Redis源码中的部分快速排序算法(pqsort.c)
看标题,你可能会疑惑:咦?你这家伙,怎么不讲解完整的快排,只讲一部分快排……其实“部分快排”是算法的名字。本文几乎与普通快排无异。看懂了本文,你对普通的快排也会有更深的认识了,实际上本文相当详细呢 快速排序算法(qsort)的原理我们大都应该了解。但你真的了解如何高效实现一个快排吗?原创 2015-06-07 19:08:39 · 7559 阅读 · 4 评论