自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 C++primer第五版第三章答案(2)

3.12(a)正确,创立一个vector,该向量的元素是vector对象。vector对象的类型是int。(b)不正确,两个向量的类型不同,无法初始化。(c)正确,其有十个值为“null”的string类型元素。3.13a. 一个元素,0。 b.十个元素,每个值都是0。c.十个元素,每个值都是42。 d.一个元素,其值为10。e.两个元素,分别为10和42。 f.十个元

2017-08-21 20:01:47 331

原创 C++primer第五版第三章答案(1)

3.2.2节练习:练习3.2:读入一整行时,可以用while(getline(cin,s1),来每次读取一行。读入一个词时,可以用while(cin>>s1),实现每次读入一个单词。练习3.3:string类的输入运算符遇到空白字符时会结束输入,而getline函数会将空白字符读入到字符串中,直到遇见换行符才结束,而且换行符不在这个字符串中。练习3.4: 比较是否相等:#i

2017-08-13 10:29:59 451

原创 EOJ 3179 简单的匹配

#include #include #include #define maxn 100#define maxm 30char t[maxn],p[maxm];int simple_match(char t[],char p[],int n,int m){ int i,j,k; for(i=0;i<=n-m;i++)//从0一直找到n-m,因为m为要查找数组的长度

2017-01-03 20:56:31 366 1

原创 EOJ 3178 二分查找

#include #include #include #define max 1000int a[max];int bisect(int a[],int n, int v)//定义二分查找函数{ int i,j,m; i=0;//i为开始 j=n-1;//j为结束 while(i<=j) { m=(i+j)/2;//m为i和j中

2017-01-03 20:53:05 340

原创 EOJ 3177 顺序查找

#include #include #include int a[1000];int serach(int a[],int x,int n){ int i; for(i=0;i<n;i++)//顺序查找 { if(a[i]==x)//找到要查找的元素,返回下标 return i; } if(i==n)//如果

2017-01-03 20:48:57 270

原创 EOJ 3176 链栈

#include #include #include struct node{ int data; struct node *link;};typedef struct node NODE;NODE *head=NULL;void push(char x){ NODE *p; p=(NODE*)malloc(sizeof(NODE)); p

2017-01-03 20:43:56 250

原创 EOJ 3174 入栈出栈

#include #include #include char stack[1500];//栈数组int top=0;//栈顶int push(char x){ if(top>=1025)//栈满,入栈失败 return 1; stack[top++]=x;//否则入栈,先入栈后top加一 return 0;}int pop(){

2017-01-03 20:30:49 319

原创 EOJ 1819 询问

#include #include int a[5000000] = { 0 };int main(){ int m, n; scanf("%d%d", &m, &n);//共有m个数,输出最小的n个 getchar();//读入换行符 int i, j, t; for (i = 0; i<m; i++) { char c;

2017-01-02 16:37:25 300

原创 EOJ 1818

#include #include #include #include #include #include #include #include #include #include #define maxn 105#define INF 0x3f3f3f3fusing namespace std;typedef long long LL;int m[maxn][max

2017-01-02 14:26:34 428

原创 EOJ 1817 最短路

#include #include #include #include #include #include #include#include#define MAXINT 9999999#define MAXN 1800typedef int MAT[MAXN][MAXN];//定义二维数组,用以存储邻接矩阵MAT cost;int dist[MAXN],pre[MAXN],

2017-01-01 14:28:10 416

原创 EOJ 1816 连通?

#include #include #include using namespace std;struct l_node{ int ver; struct l_node *link;//建立邻接表的结构};typedef struct l_node L_NODE;typedef struct//图的边存储结构{ int ver1; int ver2

2016-12-31 10:55:49 354

原创 EOJ 1815 Huffman树

#include #include #include #define max 1005struct node//建立二叉树{ int data; struct node*lchild; struct node*rchild;};typedef struct node NODE;int a[max];int w[2*max-1];//内部节点外部节点数目之和

2016-12-31 09:34:34 376

原创 EOJ 1814 完全二叉树?

#include #include #include int main(){ int n,r; scanf("%d%d",&n,&r);//共有n个节点,r为树根 int i; int degree[1030],a,b,flag=0;//flag用来判断最终树的状态 memset(degree,0,sizeof(degree));//将保存节点的度的

2016-12-31 09:33:42 320

原创 EOJ 1813 树重建

#include #include #include typedef struct node//构建二叉树的节点{ struct node*left; struct node*right; char ele;}Tree;void last(char *mid,char *pre,int len){ if(len==0)//如果长度为0,直接返回

2016-12-30 22:50:22 349

原创 EOJ 1812 二叉树的深度

#include #include #include struct tree//构建二叉树的节点{ int lch,rch;};tree t[10005];//最多有10000个元素int max(int a,int b){ return a>b? a:b;//返回较大的数的函数}int dfs(int n)//dfs计算深度{ return n?ma

2016-12-28 15:42:10 273

原创 EOJ 1811 树的遍历

#include #include #include struct DNODE//构建层号标示法的节点{ int lev; char data;};struct Node//构建树的节点{ int lev; char data; Node* parent; Node* child[30]; Node(DNODE a)//树的节点

2016-12-27 21:43:52 388

原创 EOJ 1809 询问

#include #include #include int a[1000005];int comp(const void*a,const void*b){ return *(int*)a-*(int*)b;//若a-b>0,就调用qsort交换位置}int main(){ int n,k; scanf("%d",&n);//有n个数待排序

2016-12-27 21:40:03 296

原创 EOJ 1808 冒泡排序

#include #include #include void sort(int a[],int n){ int i,j,t; for(i=0;i<n-1;i++)//共执行n-1遍 { for(j=0;j<n-1-i;j++)//每次从0开始执行到n-1-j { if(a[j]>a[j+1])//把a[j]和

2016-12-27 20:34:04 346

原创 EOJ 1807 快速排序

#include #include #include #include #include #include #include#includevoid qsort(int a[],int low, int up){ int i,j; int t; if(low<up)//low<up时才有效 { i=low;//令i,j分别取此时的最

2016-12-27 20:20:07 426

原创 EOJ 1806 选择排序

#include #include #include void selection_sort(int* a,int n){ int i,j,k,t; for(i=0;i<n-1;i++)//0到n-2共n-1次循环 { k=i; for(j=i+1;j<n;j++)//从i+1一直寻找到an-1 {

2016-12-25 00:12:00 338

原创 EOJ 1804 string

#include #include #include #define max 1025char *strca(char *a,char *ss)//把字符串ss连接到被操作的字符串之后{ int i,j,k; i=strlen(a);//测量原字符串和新加的字符串的长度 j=strlen(ss); for(k=0;k<=j;k++) {

2016-12-21 17:42:20 334

原创 EOJ 1803 link-list

Description 实现线性链表的创建于插入(插入到已有元素之后)。Input 第一行有一个整数n( 0 第三行有一个整数q,表示插入操作的个数。接下来q行里每行内有两个整数,第一个整数为链表中已经出现的元素,第二整数是要被插入的元素, 并且数据保证链表中始终不会出现相同的元素。Output 对于每次操作,将链表从头到尾打印出来,整数间用空格隔开。

2016-12-20 11:17:39 380

原创 EOJ 1802 铁路调度

Description 如下图,表示一个铁路调度站,为栈式结构,所有的火车必须右端进去并且从左端离开,现在有n(0 < n < 10)列火车要进行调度,按照进入的顺序从1到n进行编号。对于一个给定的一个出站序列,你需要判断是否是一个合法的序列。例如: n = 4, 出站序列为 4321, 这是合法的,1234依次进栈,再依次出栈得到4321Input 输入第一行是一个整数k

2016-12-20 11:15:09 1481

原创 EOJ 1801 环形队列

Description 实现环形队列(MAXN不超过100001),要求能够进行进队出队操作,参考课本P15页例程。Input 初始时,队列为空。第一行有一个整数q,表示操作的个数,接下来的q行里,每行格式如下:enqueue xxx, 表示把整数xxx进队;dequeue, 表示出队.Output 对于每次出队操作,打印出队元素,如出队不成功,打印

2016-12-20 10:28:59 1049

原创 单链表的创建与删除

#include #include #include #include #include #include #include#includetypedef struct node{ char data; struct node*link;}NODE;NODE * creat(int n){ int i; NODE *head,*p,*q;

2016-11-02 15:23:08 246

原创 双栈实现算数表达式

双栈算术表达式求值算法源代码是java实现的,先把他改成cpp实现。原理大家应该都懂,就是两个栈,一个保存读取式子的符号,遇到“(”不读,遇到“)”进行操作,其他符号保存。另一个栈保存每次读到的数字。因为每次读到)时候,都要进行一次操作,而操作对象就是最小的那对括号里面的数字,也就是第二个栈顶保存的两个元素,所以可操作。#include #include #include

2016-11-01 13:41:35 1108 1

原创 EOJ 1800 线性表的删除

参照sq_delete函数,对一个n不超过1024的线性表进行删除操作。Description 实现一个线性表:参照课本P5上的sq_delete函数,对一个n不超过1024的线性表进行删除操作Input 第一行有一个整数n,表示线性表的大小,第二行有n个整数,分别是list1,list2...listn。第三行有一个整数q,表示q次删除操作,接下来q行,每

2016-10-23 00:05:19 1061

原创 稀疏矩阵三元组转化

Description 利用原稀疏矩阵的三元数组a,求转置矩阵的三元数组b,并将其规格化,即按行号递增,若行号相同则按照列号递增的顺序。参照课本P93.94例程Input 第一行有三个整数m,n,c表示矩阵的行数和列数以及原三元组a的个数,(m,n 处理到文件结尾处Output 输出三元数组b,每个三元组一行。Sample Input 2 2 2

2016-10-21 23:22:59 1485

原创 栈的入栈出栈操作

#include #define max 26char stack[max];int top=0;int push(char x){ if(top>=max) return 1; stack[top++]=x; return 0;}int pop(){ if(top==0) return 1; top=top-

2016-10-19 19:33:24 1013

原创 对给定链表进行插入排序。

struct node{ int data; struct node* rlink; struct node* llink;};typedef struct node NODE;void insertion_sort(NODE *head,int n){ NODE *p,*q; int t; for(p=head;p!=NULL;p=p->

2016-10-18 23:17:49 425

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除