![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【数据结构】
scx_white
这个作者很懒,什么都没留下…
展开
-
求两个链表的并集
今年刚刚学的数据结构 老师布置的作业 。写写看。#include #include #define len sizeof(struct List) struct List{//结构体类型 int x; struct List *next;};struct List * creat()//定义函数,此函数返回一个指向链表头的指针{ struct List *head,*p1,原创 2015-10-06 22:24:47 · 8196 阅读 · 0 评论 -
hiho#1062 : 最近公共祖先·一
#1062 : 最近公共祖先·一时间限制:10000ms单点时限:1000ms内存限制:256MB描述小Ho最近发现了一个神奇的网站!虽然还不够像58同城那样神奇,但这个网站仍然让小Ho乐在其中,但这是为什么呢?“为什么呢?”小Hi如是问道,在他的观察中小Ho已经沉迷这个网站一周之久了,甚至连他心爱的树玩具都弃置一边。“嘿嘿,小H原创 2016-05-18 21:17:27 · 4320 阅读 · 0 评论 -
hiho#1066 : 无间道之并查集 (Trie树+并查集)
#1066 : 无间道之并查集时间限制:20000ms单点时限:1000ms内存限制:256MB描述这天天气晴朗、阳光明媚、鸟语花香,空气中弥漫着春天的气息……额,说远了,总之,小Hi和小Ho决定趁着这朗朗春光出去玩。但是刚刚离开居住的宾馆不久,抄近道不小心走入了一条偏僻小道的小Hi和小Ho就发现自己的前方走来了几个彪形大汉,定睛一看原创 2016-08-30 09:59:20 · 1867 阅读 · 0 评论 -
hdu1873 看病要排序 (2016xynu暑期集训检测 -----E题)
Description看病要排队这个是地球人都知道的常识。 不过经过细心的0068的观察,他发现了医院里排队还是有讲究的。0068所去的医院有三个医生(汗,这么少)同时看病。而看病的人病情有轻重,所以不能根据简单的先来先服务的原则。所以医院对每种病情规定了10种不同的优先级。级别为10的优先权最高,级别为1的优先权最低。医生在看病时,则会在他的队伍里面选择一个优先权最高的人进行诊治。如原创 2016-08-31 13:40:53 · 1594 阅读 · 1 评论 -
c++和数据结构 模拟栈的入栈和出栈
c++学了类 老师就让写了这个、、、#include #include using namespace std;class Stack{ public: void push(int x); void init(); int pop(); struct stack { int num; stack *next ,*pre; }*head;};原创 2016-10-09 19:02:47 · 6823 阅读 · 1 评论 -
zzuli 2130: hipercijevi bfs+输入输出外挂 (2017轻工业校赛 )
2130: hipercijeviTime Limit: 1 Sec Memory Limit: 128 MB Submit: 749 Solved: 156SubmitStatusWeb Board Description在遥远的星系, 最快的交通方式是用某种管道。 每个管道直接互相连接N个站。 那么我们从第一个站到第N个站最少要经过多少个站呢?Input输入文件的第一行为T表示有T组数据原创 2017-04-29 10:43:43 · 1806 阅读 · 0 评论 -
c++ vector容器 插入元素时实现自动排序
#include <stdio.h>#include <vector>#include <algorithm>#include <string.h>using namespace std;#define N 10000vector<int>hash[N+10];void insertHash(int x){ hash[0].insert(lower_bound(hash[0]原创 2017-04-29 16:19:54 · 12269 阅读 · 2 评论 -
nyoj138 找球号(二) (hash表+二分)
找球号(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 在某一国度里流行着一种游戏。游戏规则为:现有一堆球中,每个球上都有一个整数编号i(0<=i<=100000000),编号可重复,还有一个空箱子,现在有两种动作:一种是”ADD”,表示向空箱子里放m(0#include <stdio.h>#include <vector>#include <algo原创 2017-04-29 15:51:39 · 2178 阅读 · 0 评论 -
poj 2567 zzu10395 nyoj1254 Code the Tree(Prufer数列)
Description: A tree (i.e. a connected graph without cycles) with vertices numbered by the integers 1, 2, …, n is given. The “Prufer” code of such a tree is built as follows: the leaf (a vertex that i原创 2017-05-01 21:09:29 · 1879 阅读 · 0 评论 -
nyoj202 红黑树 (二叉树的左旋右旋)
题目202题目信息运行结果本题排行讨论区红黑树时间限制:3000 ms | 内存限制:65535 KB难度:3描述什么是红黑树呢?顾名思义,跟枣树类似,红黑树是一种叶子是黑色果子是红色的树。。。当然,这个是我说的。。。《算法导论》上可不是这么说的:如果一个二叉查找树满足下面的红黑性质,那么则原创 2017-04-20 15:57:35 · 2308 阅读 · 0 评论 -
51Nod1557 两个集合(set容器)
小X有n个互不相同的整数: p1,p2,…,pn 。他想把这些整数分到两个集合A和B里边。但是要符合下面两个条件。 · 如果x属于A,那么a-x也肯定属于A。 · 如果x属于B,那么b-x也肯定属于B。 判断一下是否存在一种方案来分配这些数字到集合A,B中。 注意:如果一个集合为空也是可以的。 Input 单组测试数据。 第一行有三个整数n,a,b (1原创 2017-05-05 09:53:14 · 2047 阅读 · 0 评论 -
poj2796 Feel Good(单调栈)
题目大意是给你一个长度为n的区间,找到一个子区间,这个子区间的所有元素之和乘以它的区间最小值要是最大的。最后输出结果和这个区间的范围。例如样例中 区间【3,5】的值为(6,4,5) ,4*(6+4+5)=60.最大。单调栈模版~原创 2017-05-05 20:50:03 · 2014 阅读 · 0 评论 -
51Nod 1349 最大值(单调栈+离线)
终于做了一个80分的题。。明天就要去郑州参加省赛了 可是心里很不踏实 看到一个不会的题 就觉得可能会考。。不看吧就觉得亏。。就想看。。看到现在。。刚刚做了一个单调栈的题 又做一个练练手~只不过这个询问次数较多 需要进行离线处理。通过单调栈找到以当前位置i为最大值的左右区间[l,r],区间[l,r]中区间的个数为:(i-l)+(r-i)+(i-l)*(r-i)+1.然后使用后缀数组保存结果即可~最后以10原创 2017-05-05 22:25:25 · 2168 阅读 · 0 评论 -
nyoj1278 zzuli1929 Prototypes analyze(河南省acm第九届省赛)
Prototypes analyze 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 ALpha Ceiling Manufacturers (ACM) is analyzing the properties of its new series of Incredibly Collapse-Proof Ceilings (ICPCs). An ICPC con原创 2017-04-26 19:07:57 · 1850 阅读 · 0 评论 -
nyoj1272 zzulioj1923表达式求值(河南省acm第九届省赛)
题目1272题目信息运行结果本题排行讨论区表达式求值时间限制:1000 ms | 内存限制:65535 KB难度:3描述假设表达式定义为: 1. 一个十进制的正整数 X 是一个表达式。 2. 如果 X 和 Y 是 表达式,则 X+Y, X*Y 也是表达式; *优先级高于+. 3. 如果 X 和 Y 是 表达式,则 函数 S原创 2017-04-26 18:52:41 · 1884 阅读 · 0 评论 -
nyoj128 前缀式计算 (strtok分割字符串+递归)
题目128题目信息运行结果本题排行讨论区前缀式计算时间限制:1000 ms | 内存限制:65535 KB难度:3描述先说明一下什么是中缀式:如2+(3+4)*5这种我们最常见的式子就是中缀式。而把中缀式按运算顺序加上括号就是:(2+((3+4)*5))然后把运算符写到括号前面就是+(2 *原创 2017-04-27 20:24:39 · 1759 阅读 · 0 评论 -
poj1330 Nearest Common Ancestors (最近公共祖先)
Nearest Common AncestorsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 24236 Accepted: 12619DescriptionA rooted tree is a well-known data structure in原创 2016-05-18 10:42:06 · 2023 阅读 · 0 评论 -
Problem C (字典树的查找删除和插入)2016"百度之星" - 资格赛(Astar Round1)
Problem C Accepts: 630 Submissions: 5255 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Problem Description度熊手上有一本神奇的字典,你可以在它里面做如下原创 2016-05-15 16:12:00 · 8253 阅读 · 0 评论 -
求两个链表的交集
很简单 慢慢看能看懂。#include #include #define len sizeof(struct List) struct List{//????? int x; struct List *next;};struct List * creat(){ struct List *head,*p1,*p2; int n=0; p1=p2=(struct List *原创 2015-10-09 14:09:39 · 5723 阅读 · 0 评论 -
创建一个双向链表或双向循环链表
#include #include #define len sizeof(struct list)struct list{ int x; struct list *pre,*next;};struct list * create()//创建链表并返回链表的首地址{ struct list *p,*p1,*head; head=p=(struct list原创 2015-10-12 09:06:02 · 4203 阅读 · 1 评论 -
nyoj63 小猴子下落 (二叉树)
题目63题目信息运行结果本题排行讨论区小猴子下落时间限制:3000 ms | 内存限制:65535 KB难度:3描述有一颗二叉树,最大深度为D,且所有叶子的深度都相同。所有结点从左到右从上到下的编号为1,2,3,·····,2的D次方减1。在结点1处放一个小猴子,它会往下跑。每个内结点上都有一个开关,初始全部关闭,原创 2015-12-28 12:25:05 · 1767 阅读 · 0 评论 -
表达式求值c语言
数据结构书上的例题。其实就是比较运算符优先级。#include #include #include #include #include using namespace std;stacknum;stackch;//将字符对应的行数以数字形式返回int tonum(char c){ switch(c) { case '+':return 0;break; ca原创 2015-12-31 10:22:52 · 8260 阅读 · 0 评论 -
冒泡排序,选择排序,sort排序
1.首先用scanf接收n个同学,然后在键盘上输入n个同学的姓名和成绩,空格分开。然后输入1 2 3 序号分别选择三种排序方式,回车结束。程序会自动根据你选择的排序方式进行排序。2.首先用scanf接收有几个数字,然后输入n个无序的数。调用快速排序函数,得出结果。#include #include using namespace std;struct student{ cha原创 2015-12-31 10:28:58 · 2289 阅读 · 0 评论 -
折半查找法/二分法
在有序(设为升序)表中,取中间元素作为比较对象,若给定值与中间元素的关键字相等,则查找成功;若给定值小于中间元素的关键字,则在中间元素的左半区继续查找;若给定值大于中间元素的关键字,则在中间元素的右半区继续查找。不断重复上述查找过程,直到查找成功,或所查找的区域无该数据元素,查找失败。 【测试数据】 (1)设有关键字序列k={ 5 ,14 ,18 ,21 ,23 ,29 ,31 ,3原创 2015-12-31 10:31:27 · 2920 阅读 · 1 评论 -
线性表链式存储结构下基本操作的实现(初始化、赋值、取值、插入、删除、归并等)
数据结构书上都是伪码,不能照抄。要做适当的改变#include #include #include #define len sizeof(struct list)struct list{ int data; struct list *next;}; struct list *la,*lb;//初始化链表 struct list * InitList(){ struct原创 2015-12-31 10:34:26 · 10903 阅读 · 0 评论 -
nyoj801 Haffman编码(优先队列实现)
题目801题目信息运行结果本题排行讨论区Haffman编码时间限制:1000 ms | 内存限制:65535 KB难度:3描述哈弗曼编码大家一定很熟悉吧(不熟悉也没关系,自己查去。。。)。现在给你一串字符以及它们所对应的权值,让你构造哈弗曼树,从而确定每个字符的哈弗曼编码。当然,这里有一些小规定:1.规定哈原创 2015-12-27 11:36:55 · 2224 阅读 · 0 评论 -
快速排序
快速排序思想。定义一个quick数组,下标0不用,两个指针low和highquick[0]存贮哨兵上的数假设以low关键字为哨兵。把这个数赋值到quick[0]从最high开始依次向左一次减1,直到找到第一个小于quick[0]的数 将其赋值给quick[low]这个时候quick[high]上的数是多余的,从low开始依次向右加1,直到找到第一个小于quick[0]的数原创 2015-12-29 22:24:27 · 1433 阅读 · 0 评论 -
POJ2255 Tree Recovery (先序中序-》后序)
B - Tree RecoveryCrawling in process...Crawling failedTime Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmitStatus Practice POJ 2255 Appoint descri原创 2016-05-10 08:46:22 · 1949 阅读 · 0 评论 -
poj2513 Colored Sticks (欧拉通路+Trie树+并查集)
D - Colored SticksCrawling in process...Crawling failedTime Limit:5000MS Memory Limit:128000KB 64bit IO Format:%I64d & %I64u SubmitStatus Practice POJ 2513 Appoint des原创 2016-05-11 21:09:25 · 4508 阅读 · 2 评论 -
hiho#1049 : 后序遍历( nyoj848 STBE)
#1049 : 后序遍历时间限制:10000ms单点时限:1000ms内存限制:256MB描述在参与过了美食节之后,小Hi和小Ho在别的地方又玩耍了一阵子,在这个过程中,小Ho得到了一个非常有意思的玩具——一棵由小球和木棍连接起来的二叉树!小Ho对这棵二叉树爱不释手,于是给它的每一个节点都标记了一个标号——一个属于A..Z的大写字母,原创 2016-05-01 20:02:41 · 4795 阅读 · 0 评论 -
hdu2196 Computer(树的直径||树中的最长路径)
ComputerTime Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5232 Accepted Submission(s): 2640Problem DescriptionA school bought the f原创 2016-05-02 17:40:11 · 6860 阅读 · 0 评论 -
hiho#1050 : 树中的最长路
#1050 : 树中的最长路时间限制:10000ms单点时限:1000ms内存限制:256MB描述上回说到,小Ho得到了一棵二叉树玩具,这个玩具是由小球和木棍连接起来的,而在拆拼它的过程中,小Ho发现他不仅仅可以拼凑成一棵二叉树!还可以拼凑成一棵多叉树——好吧,其实就是更为平常的树而已。但是不管怎么说,小Ho喜爱的玩具又升级换代了,于原创 2016-05-02 19:24:48 · 5232 阅读 · 0 评论 -
nyoj1254 Code the Tree (第七届河南省程序设计大赛)
题目1254题目信息运行结果本题排行讨论区Code the Tree时间限制:1000 ms | 内存限制:65535 KB难度:3描述A tree (i.e. a connected graph without cycles) with vertices numbered by the integers 1, 2, ..., n is given. The "原创 2016-05-27 21:51:55 · 4655 阅读 · 0 评论 -
51nod 1174 区间中最大的数(线段树)
1174 区间中最大的数 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出一个有N个数的序列,编号0 - N - 1。进行Q次查询,查询编号i至j的所有数中,最大的数是多少。 例如: 1 7 6 3 1。i = 1, j = 3,对应的数为7 6 3,最大的数为7。(该问题也被称为RMQ问题) Input 第1行:1个数N,表示序列的长度。(原创 2017-07-08 20:07:39 · 1166 阅读 · 0 评论