数据结构
文章平均质量分 61
6个小石头
这个作者很懒,什么都没留下…
展开
-
《数据结构》— NYOJ 117 求逆序数
求逆序数时间限制:2000ms | 内存限制:65535KB难度:5描述在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。现在,给你一个N个元素的序列,请你判断出它的逆序数是多少。比如 1 3 2 的逆序数就是1。输入第一行输入一个整数T表示测试数据的组数(1<...原创 2017-04-04 15:58:13 · 659 阅读 · 0 评论 -
《数据结构》— NYOJ 128 前缀式表达
题目128 题目信息 运行结果 本题排行 讨论区前缀式计算时间限制:1000ms | 内存限制:65535KB难度:3描述先说明一下什么是中缀式:如2+(3+4)*5这种我们最常见的式子就是中缀式。而把中缀式按运算顺序加上括号就是:(2+((3+4)*5))然后把运算符写到括号前面就是+(2 *( +(3 4) 5) )把括号去掉就是:+ 2 * ...原创 2017-04-04 15:46:38 · 592 阅读 · 0 评论 -
《数据结构》— NYOJ 123 士兵杀敌(四)
士兵杀敌(四)时间限制:2000ms | 内存限制:65535KB难度:5描述南将军麾下有百万精兵,现已知共有M个士兵,编号为1~M,每次有任务的时候,总会有一批编号连在一起人请战(编号相近的人经常在一块,相互之间比较熟悉),最终他们获得的军功,也将会平分到每个人身上,这样,有时候,计算他们中的哪一个人到底有多少军功就是一个比较困难的事情,军师小工的任务就是在南将军询问他某...原创 2017-04-02 20:42:48 · 404 阅读 · 0 评论 -
《数据结构》— NYOJ 108 士兵杀敌(一)
题目108 题目信息 运行结果 本题排行 讨论区士兵杀敌(一)时间限制:1000ms | 内存限制:65535KB难度:3描述南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。小工是南将军手下的军师,南将军现在想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。注意,南将军可能会问很多次问题。输入只有一组测试数据第一行...原创 2017-04-02 19:31:56 · 594 阅读 · 0 评论 -
《数据结构》— NYOJ 93 汉诺塔(三)【栈】
汉诺塔(三)时间限制:3000ms | 内存限制:65535KB难度:3描述在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必...原创 2016-08-23 09:21:32 · 514 阅读 · 0 评论 -
《数据结构》— NYOJ 2 括号配对问题 【栈】
括号配对问题时间限制:3000ms | 内存限制:65535KB难度:3描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"...原创 2016-08-23 10:09:24 · 555 阅读 · 0 评论 -
《数据结构》— NYOJ 119 士兵杀敌(三)
士兵杀敌(三)时间限制:2000ms | 内存限制:65535KB难度:5描述南将军统率着N个士兵,士兵分别编号为1~N,南将军经常爱拿某一段编号内杀敌数最高的人与杀敌数最低的人进行比较,计算出两个人的杀敌数差值,用这种方法一方面能鼓舞杀敌数高的人,另一方面也算是批评杀敌数低的人,起到了很好的效果。所以,南将军经常问军师小工第i号士兵到第j号士兵中,杀敌数最高的人与杀敌...原创 2017-04-02 20:39:46 · 447 阅读 · 0 评论 -
《数据结构》— NYOJ 305 表达式求值
表达式求值时间限制:3000ms | 内存限制:65535KB难度:3描述Dr.Kong设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20,add(10,98)的值是108等等。经过训练,Dr.Kong设计的机器人卡多甚至会计算一种嵌套的更复杂的表达式。假设表达式可以简单定义为:1.一个正的十进...原创 2017-01-27 18:55:58 · 479 阅读 · 0 评论 -
《数据结构》— NYOJ 116 士兵杀敌(二)
士兵杀敌(二)时间限制:1000ms | 内存限制:65535KB难度:5描述南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。小工是南将军手下的军师,南将军经常想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。南将军的某次询问之后士兵i可能又杀敌q人,之后南将军再询问的时候,需要考虑到新增的杀敌数。输入只有一组测试数据...原创 2017-04-02 20:35:23 · 630 阅读 · 0 评论 -
《数据结构》— 线段树知识点模版详解
线段树详解第一部分1.定义:线段树(Segment Tree)是一种二叉搜索树,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2,b]。因此线段树是满二叉树,最后的子节点数目为N,即整个线段区间的长度。使用线段树可以快速的查找某一...原创 2017-08-11 11:06:44 · 737 阅读 · 2 评论 -
《数据结构》— 优先队列详解
优先队列:顾名思义,首先它是一个队列,但是它强调了“优先”二字,所以,已经不能算是一般意义上的队列了,它的“优先”意指取队首元素时,有一定的选择性,即根据元素的属性选择某一项值最优的出队~百度百科上这样描述的: 优先级队列 是不同于先进先出队列的另一种队列。每次从队列中取出的是具有最高优先权的元素 优先队列是0个或多个元素的集合,每个元素都有一个优先权或值,对优先队列执行的操作有1...原创 2017-08-11 11:46:14 · 560 阅读 · 0 评论 -
《数据结构》— 数据结构图文解析系列
查看原文点击链接即可0. 数据结构图文解析系列数据结构系列文章 数据结构图文解析之:数组、单链表、双链表介绍及C++模板实现 数据结构图文解析之:栈的简介及C++模板实现 数据结构图文解析之:队列详解与C++模板实现 数据结构图文解析之:树的简介及二叉排序树C++模板实现. 数据结构图文解析之:AVL树详解及C++模板实现 数据结构图文解析之:二叉堆详解及C++模板...原创 2017-08-11 11:54:52 · 8685 阅读 · 2 评论 -
栈的应用——数制转换
#include #define STACKSIZE 110#define OK 1#define TRUE 1#define FALSE 0int flag;typedef int ElemType;typedef int Status;typedef struct{ ElemType data[STACKSIZE]; int top;}SeqStack;v原创 2016-12-01 20:21:11 · 735 阅读 · 0 评论 -
栈的应用——数值转换为任意进制
#include#include#include#define STACK_INIT_SIZE 100#define STACKINCREMENT 10typedef struct sqstack { int *base; int *top; int stacksize; }sqstack;int InitStack(sqstack *s ) { s->原创 2016-12-01 20:28:07 · 1025 阅读 · 0 评论 -
栈的应用——行编辑程序
1、循环输入:要先getchar()输入一次,判断是否是回车结束符,不是再读入内存并在此getchar()输入,直到回车2、switch……case结构注意除default之外都要加break;3、有多于一个栈的时候每次调用栈时要注意调用的是哪个栈,要细心!#include #include #include #define STACK_INIT_SIZE 100原创 2016-12-01 20:53:07 · 777 阅读 · 0 评论 -
《数据结构》— 栈的应用——迷宫求解问题
/* 利用栈求解迷宫问题(只输出一个解,算法3.3) */ typedef struct /* 迷宫坐标位置类型 */ { int x; /* 行值 */ int y; /* 列值 */ }PosType; #define MAXLENGTH 25 /* 设迷宫的最大行列为25 */ typedef int MazeType[MAXLENGTH][MAXLENGTH]...原创 2016-12-03 12:51:36 · 1327 阅读 · 0 评论 -
抽象数据类型Triplet和ElemType的基本操作(8个)
抽象数据类型Triplet和ElemType的基本操作(8个)// 采用动态分配的顺序存储结构 typedef ElemType *Triplet; // 由InitTriplet分配3个元素存储空间 // Triplet类型是ElemType类型的指针,存放ElemType类型的地址 Status InitTriplet(Triplet &T,ElemType v1,ElemType原创 2016-12-16 17:25:27 · 4918 阅读 · 0 评论 -
《数据结构》— 数据结构头文件
#include<string.h> #include<ctype.h> #include<malloc.h> // malloc()等 #include<limits.h> // INT_MAX等 #include<stdio.h> // EOF(=^Z或F6),NULL #include<stdlib.h> /...原创 2016-12-16 17:28:29 · 6703 阅读 · 0 评论 -
《数据结构》— 常用数据结构
基本结构 高级结构 题单 集合结构 幷查集 POJ 1182 POJ 1308 POJ 1611 POJ 1986 POJ 1988 线性结构 数组 栈 队列 双端队列 POJ...原创 2017-11-21 08:23:53 · 446 阅读 · 1 评论 -
《数据结构》— 图论
1.邻接矩阵的创建#include<stdio.h> #define MAXVEX 100 /* 最大顶点数,应由用户定义 */#define INFINITY -1typedef char VertexType; /* 顶点类型应由用户定义 */typedef int EdgeType; /* 边上的权值类型应由用户定义 */typedef struct...原创 2017-08-12 16:52:38 · 668 阅读 · 0 评论 -
《数据结构》— 并查集详解
并查集并查集(Union-find Sets)是一种非常精巧而实用的数据结构,它主要用于处理一些不相交集合的合并问题。一些常见的用途有求连通子图、求最小生成树的 Kruskal算法和求最近公共祖先(Least Common Ancestors, LCA)等。使用并查集时,首先会存在一组不相交的动态集合S={S1,S2,⋯,Sk},一般都会使用一个整数表示集合中的一个元素。每个集合可...原创 2017-08-11 12:05:26 · 536 阅读 · 0 评论 -
《数据结构》— NYOJ 35 表达式求值
题目35 题目信息 运行结果 本题排行 讨论区表达式求值时间限制:3000ms | 内存限制:65535KB难度:4描述ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能求出它的值的计算器,现在请你帮助他来实现这个计算器吧。比如输入:“1+2/4=”,程序就输出1.50(结果保留两位小数)输入第...原创 2017-04-04 15:35:26 · 536 阅读 · 0 评论