数据结构
文章平均质量分 83
穆梓先生
人之为学有难易乎?学之则难者亦易矣,不学则易者亦难矣!
展开
-
找球号(二)
找球号(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述在某一国度里流行着一种游戏。游戏规则为:现有一堆球中,每个球上都有一个整数编号i(0<=i<=100000000),编号可重复,还有一个空箱子,现在有两种动作:一种是"ADD",表示向空箱子里放m(0<m<=100)个球,另一种是"QUERY”,表示说出M(0<M<=10转载 2017-08-09 15:59:10 · 430 阅读 · 0 评论 -
1881: 求逆序数(归并排序求逆序数)
1881: 求逆序数时间限制: 2 Sec 内存限制: 64 MB提交: 9 解决: 7[提交][状态][讨论版][Edit] [TestData]题目描述在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。现在,给你一个N个元素的序列,请你判断出它的逆序数是多少。比如 1 3 2 的逆序数就是1。输入第...转载 2017-08-08 17:12:11 · 440 阅读 · 0 评论 -
Minimum Inversion Number
Minimum Inversion NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 20985 Accepted Submission(s): 12585Problem DescriptionThe inversion n...原创 2017-08-08 17:58:18 · 215 阅读 · 0 评论 -
hdu 1892 See you~(二维树状数组)
二维树状·数组 讲解:https://blog.csdn.net/qq_18661257/article/details/47347995#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; #define maxn 1020 int n; int c[1050...转载 2018-04-22 15:17:16 · 224 阅读 · 0 评论 -
hdu 1496 Equations(很巧的hash)
如果写成四重循环的程序,肯定会超时。这道题目给了我们 a,b,c,d 四个系数,而未知数却又四个,因此常规得暴力枚举写法会有四重循环。hash的处理即使将四个未知数拆成两部分,进行hash ,将两个未知数通过二维数组下标映射到一个唯一物理内存,这片区域即是一半方程式的值,此时只要做一个减法就可了,a+ b= 0, 得到 b= 0- a; 还是用数组来快速定位。代码如下#include<std...原创 2018-04-13 10:36:18 · 297 阅读 · 1 评论 -
hdu 1209 clock (计算时针分针的角度问题)
转自 :http://res.tongyi.com/resources/old_article/student/846.html一、知识预备(1)普通钟表相当于圆,其时针或分针走一圈均相当于走过360°角;(2)钟表上的每一个大格(时针的一小时或分针的5分钟)对应的角度是:;(3)时针每走过1分钟对应的角度应为:;(4)分针每走过1分钟对应的角度应为:。 二.计算举例 例1. 如图1所示,当时...转载 2018-04-13 15:54:24 · 301 阅读 · 0 评论 -
hdu 1280 前m大的数 (hash)
#include<stdio.h> #include<string.h> #include<algorithm> using namespace std; #define MAXN 10005 int a[3005]; int num[MAXN]; int main(){ int n,m; while(scanf("%d%d",&n,&m...原创 2018-04-13 17:14:29 · 131 阅读 · 0 评论 -
hdu 1391 Number Steps(找规律)
这些点只出现在y=x和y=x-2这两条直线上。因次x和y只会满足两种情况:x ==y x-y=2不满足以上的情况,就没有解。如果满足以上任一,可以发现当x为偶数(y和x奇偶性相同),答案为x+y,x为奇数时,答案是x+y-1#include<stdio.h> #include<string.h> using namespace std; int main(){ int...原创 2018-04-13 19:34:18 · 189 阅读 · 0 评论 -
hdu 2586 How far away ?
#include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> #include<vector> #include<queue> using namespace std; struct Edge{ int v,cost; Edge(i...原创 2018-04-14 09:33:22 · 105 阅读 · 0 评论 -
Ultra-QuickSort
Ultra-QuickSortTime Limit: 7000MS Memory Limit: 65536KTotal Submissions: 62339 Accepted: 23198DescriptionIn this problem, you have to analyze a particular sorting algorithm. The algorithm processes a ...原创 2017-08-08 18:04:49 · 444 阅读 · 0 评论 -
2489: 进击的二叉查找树 (二叉树的操作)
#include<stdio.h> #include<queue> #include<algorithm> using namespace std; int n; struct Node{ int data; Node *lchild,*rchild; Node(int e):data(e),lchild(NULL),rchild(NULL){} ...原创 2018-04-15 20:46:20 · 269 阅读 · 0 评论 -
1918: 红黑树
1918: 红黑树 时间限制: 3 Sec 内存限制: 64 MB 提交: 17 解决: 4 [提交][状态][讨论版][Edit] [TestData] 题目描述 什么是红黑树呢?顾名思义,跟枣树类似,红黑树是一种叶子是黑色果子是红色的树。。。 当然,这个是我说的。。。 《算法导论》上可不是这么说的: 如果一个二叉查找树满足下面的红黑性质,那么则为原创 2017-08-09 16:50:45 · 225 阅读 · 0 评论 -
中缀式变后缀式
中缀式变后缀式 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 人们的日常习惯是把算术表达式写成中缀式,但对于机器来说更“习惯于”后缀式,关于算术表达式的中缀式和后缀式的论述一般的数据结构书都有相关内容可供参看,这里不再赘述,现在你的任务是将中缀式变为后缀式。 输入 第一行输入一个整数n,共有n组测试数据(n 每组测试数据只有原创 2017-08-10 10:36:39 · 261 阅读 · 0 评论 -
表达式求值
表达式求值 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 Dr.Kong设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20 ,add(10,98) 的值是108等等。经过训练,Dr.Kong设计的机器人卡多甚至会计算一种嵌套的更复杂的表达式。 假设表达式可以简单定原创 2017-08-10 15:15:07 · 400 阅读 · 0 评论 -
1959: 郁闷的C小加(二)
1959: 郁闷的C小加(二) 时间限制: 1 Sec 内存限制: 64 MB 提交: 5 解决: 3 [提交][状态][讨论版][Edit] [TestData] 题目描述 聪明的你帮助C小加解决了中缀表达式到后缀表达式的转换(详情请参考“郁闷的C小加(一)”),C小加很高兴。但C小加是个爱思考的人,他又想通过这种方法计算一个表达式的值。即先把表达式转换为后缀表达式,再求值原创 2017-08-10 16:53:17 · 210 阅读 · 0 评论 -
表达式求值
表达式求值 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能求出它的值的计算器,现在请你帮助他来实现这个计算器吧。 比如输入:“1+2/4=”,程序就输出1.50(结果保留两位小数) 输入第一行输入一个整数n,共有n组测试数原创 2017-08-07 11:11:01 · 389 阅读 · 0 评论 -
重建二叉树
重建二叉树 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述题目很简单,给你一棵二叉树的后序和中序序列,求出它的前序序列(So easy!)。 输入输入有多组数据(少于100组),以文件结尾结束。 每组数据仅一行,包括两个字符串,中间用空格隔开,分别表示二叉树的后序和中序序列(字符串长度小于26,输入数据保证合法)。 输出每组输出转载 2017-09-21 20:53:56 · 158 阅读 · 0 评论 -
二叉树前序、中序、后序遍历相互求法
二叉树前序、中序、后序遍历相互求法 今天来总结下二叉树前序、中序、后序遍历相互求法,即如果知道两个的遍历,如何求第三种遍历方法,比较笨的方法是画出来二叉树,然后根据各种遍历不同的特性来求,也可以编程求出,下面我们分别说明。 首先,我们看看前序、中序、后序遍历的特性: 前序遍历: 1.访问根节点 2.前序遍历左子树转载 2017-09-21 20:54:49 · 197 阅读 · 0 评论 -
敌兵布阵
敌兵布阵Problem DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视...原创 2017-04-28 21:57:36 · 296 阅读 · 0 评论 -
数据结构之 java 顺序表实现
转自https://www.cnblogs.com/smyhvae/p/4758808.html 【正文】 本节内容: 线性结构 线性表抽象数据类型 顺序表 顺序表应用 一、线性结构: 如果一个数据元素序列满足: (1)除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素; (2)第一个数据元素没有前驱数据元素; (3)最后一个数据元素没有后继...转载 2018-08-13 14:13:39 · 1380 阅读 · 0 评论