![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
追溯的博客
愿乘长风破万里浪
展开
-
字符串长度
Description写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。Input一行字符串Output字符串长度Sample Inputt9g(*&WE3@#$fw2adECWErSample Output22HINT主函数已给定如下,提交时不需要包含下述主函数/* C代码 */int main(){ int stringlen (char *); char str[100];...原创 2021-01-14 17:03:52 · 213 阅读 · 0 评论 -
职工工资统计C++
题目描述定义了一个用于记录职工工资情况的结构体。请编写程序,输入职工人数,以及这些职工的姓名、基本工资、奖金,输出每位职工的姓名、基本工资、奖金和收入总额,并输出平均收入。 下面给出了程序的一部分,请将其余的部分补上。只提交begin和end之间的部分代码C:#include <stdio.h>using namespace std;struct WageList{ char name[10]; //姓名 double baseWage; /...原创 2021-01-12 15:09:47 · 1569 阅读 · 0 评论 -
直接插入排序
题目描述设计一个程序,实现直接插入排序算法,并输出{9,8,7,6,5,4,3,2,1,0}的排序过程。输入输出每个排序过程输出一行,直到排序完成。样例输出9 8 7 6 5 4 3 2 1 08 9 7 6 5 4 3 2 1 0......提示#include<stdio.h> int main() { int a[10]= {9,8,7,6,5,4,3,2,1,0}; int i,j,k,temp; ...原创 2021-01-12 15:08:39 · 208 阅读 · 0 评论 -
折半查找
#include<stdio.h>int binsearch(int *a,int n,int value);void input(int *a,int n);void input(int *a,int n){ int i; for(i=1;i<=n;i++) { scanf("%d",&a[i]); }}int binsearch(int *a,int n,int value){ int i,m=0; ...原创 2021-01-12 15:06:43 · 111 阅读 · 0 评论 -
长方柱类【C++ 类定义】
题目描述编写基于对象的程序,求长方柱(Bulk)的体积。数据成员包括长(length)、宽(width)、高(heigth)、体积,要求用成员函数实现下面的功能:(1)由键盘输入长方柱的长、宽、高;(2)计算长方柱的体积(volume)和表面积(areas);(3)输出这长方柱的体积和表面积。(可以复制提示部分的代码开始你的编程)输入长方柱的长、宽、高输出长方柱的体积和表面积样例输入2 3 4样例输出2452提示class Bulk...原创 2021-01-12 15:05:21 · 747 阅读 · 0 评论 -
写一函数,将两个字符串连接
#include<stdio.h>#include<string.h>void string(char *a,char *b){ strcat(a,b); puts(a);}int main(){ char str1[300]; char str2[200]; gets(str1); gets(str2); string(str1,str2); return 0;}原创 2021-01-12 15:03:17 · 841 阅读 · 0 评论 -
小数计算——结构体
Description小数可以看成是一个点和两个数组成的,因此可以定义成一个小数的结构体,现在请用结构体的知识来计算两个小数相加。注意:不考虑进位,输入的值都是小数,小数位只有一位。Input输入两个小数Output输出两个小数的和Sample Input1.23.4Sample Output4.6HINT//以下代码自动添加到程序结尾//c++int main(){ xiaoshu a,b; void add...原创 2021-01-12 15:02:00 · 465 阅读 · 0 评论 -
我的编号
题目描述建立一个学生链表,每个链表结点含有学生的基本信息,编号和姓名。现在n个学生站成一列,根据学生姓名查找学生的编号。请将代码补充完整,只需提交补充部分。请用C++方式提交C++代码:#include <iostream>#include <string.h>using namespace std;struct student{ int number; char name[20]; student *next;};student...原创 2021-01-12 15:00:56 · 533 阅读 · 0 评论 -
文件操作3
#include <stdio.h>#include <stdlib.h>#define TABSIZE 8 /* 制表符宽度 */int main(){ int num; /* 空格计数 */ int i; /* 循环变量 */ char ch; /* 当前读入字符 */ FILE *fin; /* 输入文件 */ fin=fopen("score.dic","r"); ...原创 2021-01-12 14:59:05 · 156 阅读 · 0 评论 -
文件操作1
#include <stdio.h>#include <stdlib.h>int main(){ int num=0; /* 班级人数计数 */ int sumScore=0; /* 累计成绩*/ int curClass; /* 当前班级 */ int curScore; /* 当前成绩 */ int lastClass; /* 上一个班级*/ int readItem...原创 2021-01-11 23:00:41 · 74 阅读 · 0 评论 -
贪心之To Fill or Not to Fill
题目描述With highways available, driving a car from Hangzhou to any other city is easy. But since the tank capacity of a car is limited, we have to find gas stations on the way from time to time. Different gas station may give different price. You are asked原创 2021-01-11 22:59:42 · 88 阅读 · 0 评论 -
贪心之Painter
题目描述The local toy store sells small fingerpainting kits with between three and twelve 50ml bottles of paint, each a different color. The paints are bright and fun to work with, and have the useful property that if you mix X ml each of any three differen原创 2021-01-11 22:59:07 · 87 阅读 · 0 评论 -
贪心之Packets
题目描述A factory produces products packed in square packets of the same height h and of the sizes 1*1, 2*2, 3*3, 4*4, 5*5, 6*6. These products are always delivered to customers in the square parcels of the same height h as the products have and of the size原创 2021-01-11 22:58:27 · 129 阅读 · 0 评论 -
贪心之Democracy in danger
题目描述In one of the countries of Caribbean basin all decisions were accepted by the simple majority of votes at the general meeting of citizens (fortunately, there were no lots of them). One of the local parties, aspiring to come to power as lawfully as p原创 2021-01-11 22:57:45 · 113 阅读 · 0 评论 -
顺序表基本运算(线性表)
题目描述编写一个程序,实现顺序表的各种基本运算(假设顺序表的元素类型为char),主函数已给出,请补充每一种方法。1、初始化顺序表L;2、采用尾插法依次插入元素a,b,c,d,e;3、输出顺序表L;4、输出顺序表L的长度;5、判断顺序表是否为空;6、输出顺序表L的第三个元素;7、输出元素a的位置;8、在第四个元素位置插入元素f;9、输出顺序表L;10、删除L的第三个元素;11、输出顺序表L;12、释放顺序表L; 顺序表的定义为type...原创 2021-01-11 22:57:00 · 1781 阅读 · 0 评论 -
输入一个数插入有序数组中
题目描述已有一个已排好的9个元素的数组,今输入一个数要求按原来排序的规律将它插入数组中。输入第一行,原始数列。第二行,需要插入的数字。输出排序后的数列样例输入1 7 8 17 23 24 59 62 10150样例输出178172324505962101#include<stdio.h>#define N 10int main(){ int a[N],i,j,t,k; for(i=0;i<N;i++) ...原创 2021-01-11 22:56:19 · 885 阅读 · 0 评论 -
删除相同元素(线性表)
题目描述(线性表)在一个递增有序的线性表中,有数值相同的元素存在。若存储方式为单链表,设计算法去掉数值相同的元素,使表中不再有重复的元素。输入输入长度:6输入数据:2 3 4 5 5 7输出2 3 4 5 7样例输入68 9 10 11 22 22样例输出8 9 10 11 22提示#include <stdio.h>#include<malloc.h>typedef int ElemType;typedef struc.原创 2021-01-11 22:54:39 · 1098 阅读 · 0 评论 -
删除区间内的元素(线性表)
题目描述若一个线性表L采用顺序存储结构,其中元素都为整数。设计一个算法,删除元素值在[x,y]之间的所有元素,要求算法的时间复杂度为O(n),空间复杂度为O(1).顺序表定义为:typedef struct{ ElemType data[SizeMax]; int length;} SqList;需编写的算法为:bool Delete(SqList *&L,ElemType x,ElemType y);输入输入的第一行代表线性表的长...原创 2021-01-09 22:57:57 · 696 阅读 · 0 评论 -
求素数
题目描述设计一个程序,输出所有小于等于n(n为一个大于2的正整数)的素数。要求:(1)每行输出10个素数。 (2)尽量采用较优的算法。输入50输出 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47样例输入50样例输出 2 3 5 7 11 13 17 19 23 29 31 3...原创 2021-01-09 22:57:13 · 302 阅读 · 0 评论 -
求各位数字之和
题目描述编写一个程序,计算任意输入的正整数的各位数字之和。(输入的位数不要超过10位。多组测试数据输入)输入123输出6样例输入145样例输出10提示#include <stdio.h>#include <stdlib.h>int main(){ int i,n,sum; while( scanf("%d",&n)!=EOF) { i=0; sum=0; ...原创 2021-01-09 22:56:25 · 1831 阅读 · 0 评论 -
排序问题
Description输入10个整数,将它们从小到大排序后输出,并给出现在每个元素在原来序列中的位置。Input输入数据有一行,包含10个整数,用空格分开。Output输出数据有两行,第一行为排序后的序列,第二行为排序后各个元素在原来序列中的位置。Sample Input1 2 3 5 4 6 8 9 10 7Sample Output1 2 3 4 5 6 7 8 9 101 2 3 5 4 6 10 7 8 9cpp:#include <stdio.h> ..原创 2021-01-09 22:55:47 · 453 阅读 · 0 评论 -
逆置链式链表(线性表)
题目描述本题只需要提交填写部分的代码(线性表)试编写算法将线性表就地逆置,以链式存储结构实现。代码:#include <stdio.h>#include <malloc.h>struct Num{ int n; struct Num *next;}num;struct Num *createlist(struct Num *head);void print(struct Num *head);void destroy(struct Num *he...原创 2021-01-09 22:55:09 · 1447 阅读 · 0 评论 -
哪一天,哪一秒?
#include <stdio.h>struct Time{ int year; int month; int day; int hour; int minute; int second;};void getTime(struct Time *pt);int dayOfYear(struct Time t);long secondOfyear(struct Time *pt);int main(){ struct Time ...原创 2021-01-09 22:53:42 · 205 阅读 · 0 评论 -
李白打酒
题目描述话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱: 无事街上走,提壶去打酒。 逢店加一倍,遇花喝一斗。这一路上,他一共遇到店m次,遇到花n次,已知最后一次遇到的是花,他正好把酒喝光了。 请你计算李白遇到店和花的次序,可以把遇店记为a,遇花记为b。例如:这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。则:babaabbabbabbbb 就是合理的次序。像这样的答案...原创 2021-01-09 22:51:24 · 208 阅读 · 0 评论 -
快速排序
#include<stdio.h> int a[100],n; void paixu(int left,int right) { int i,j,t,temp; if(left>right) return; temp=a[left];//准基数 i=left; j=right; while(i!=j) { //从右往左找 whil...原创 2021-01-09 22:50:38 · 93 阅读 · 0 评论 -
结构体---职工信息结构体
#include <stdio.h>#include <stdlib.h>struct inf{ char name[20]; int year; int salary;}zhigong[5];int main(){ int i; for(i=0;i<5;i++) scanf("%s %d %d",zhigong[i].name,&zhigong[i].year,&zhigong[i].sala...原创 2021-01-09 22:49:39 · 1379 阅读 · 0 评论 -
结构体--学生信息排序 (2)
Description定义存放一个学生信息的结构体类型,学生信息包括:姓名,学号,性别,院系,要求在随意输入5个学生的相关信息后,按照学号从小到大顺序输出这些学生的信息。Input先输入5名学生的信息,按学号顺序排序输出后在输入要统计的院系名称Output先按学号从小到大的顺序输出学生信息Sample Inputzhang3 20149003 M 信息系zhang5 20149005 F 信息系zhang10 20149010 ...原创 2021-01-07 21:47:15 · 1152 阅读 · 0 评论 -
结构体--学生信息排序
#include <stdio.h>struct information{ char name[10]; int num; char gender; char yuan[10];}person[5],t;int main(){ int i,j; for(i=0;i<5;i++) { scanf("%s%d %c%s",person[i].name,&person[i].num,&pers...原创 2021-01-07 21:46:39 · 390 阅读 · 1 评论 -
结构体---点坐标结构体
Description定义一个表示点坐标的结构体,输入两个点的坐标,输出这两个点中点的坐标Input第一个点的坐标(横坐标 和 纵坐标)第二个点的坐标(横坐标 和 纵坐标)Output这两个点的中点坐标(横坐标和纵坐标,横坐标和纵坐标中间有一个空格)Sample Input2 34 3Sample Output3.0 3.0HINT小数点后保留一位小数#include<stdio.h>struct zuobiao{ floa...原创 2021-01-07 21:46:03 · 2002 阅读 · 0 评论 -
结构体--成绩统计
Description建立一个简单的学生信息表,包括:姓名、性别、年龄及一门课程的成绩,统计输出学生的平均成绩和不及格同学姓名和不及格人数。根据给出的代码实现函数total,只需提交该函数。#include<iostream>#include<iomanip>using namespace std;struct student{ char name[20]; char sex; int age; float sc...原创 2021-01-07 21:45:24 · 1347 阅读 · 0 评论 -
计算该日在本年中是第几天
Description定义一个结构体变量(包括年、月、日)。编写一个函数days,由主函数将年、月、日传递给函数days,计算出该日在本年中是第几天并将结果传回主函数输出。Input年月日Output当年第几天Sample Input2000 12 31Sample Output366HINT主函数已给定如下,提交时不需要包含下述主函数/* C代码 */int main(){ struct y_m_d date; ...原创 2021-01-07 21:44:40 · 809 阅读 · 0 评论 -
国家排序
Description世界格局动荡不安,10国紧急召开会议磋商对策。有些国家斤斤计较,参会代表的座位如何排定争个不停。现在给他们按字典序排列,赶紧商议正事。请编写程序,为这10国的代表排好顺序。Input10个国家的名字,一个国家一行Output排好序的国家名,一个国家一行Sample InputIrelandPolandGermanyFranceNorwayKoreaMalaysiaThailandChinaBrazilSample OutputBr原创 2021-01-07 21:43:54 · 866 阅读 · 0 评论 -
复杂类型作函数参数之指针作为函数参数
Description用指针作为函数参数,交换两个变量的值。#include <stdio.h> /* 形参为指针 *///begin//endint main( ){ int a, b, *p, *q; scanf("%d%d", &a, &b); /* 输入变量a、b的值 */ p = &a; /* 指针p指向变量a */ ...原创 2021-01-07 21:42:37 · 412 阅读 · 0 评论 -
复杂类型作函数参数之一维数组作函数参数
Description一维数组中存放了一个学生若干门课程的成绩,编程求平均成绩。#include<stdio.h>//begin//end{ int i; float aver, sum = 0; /* sum用来统计课程的总分 */ for ( i = 0; i < n; i++) /* 用循环语句累加各门功课的成绩 */...原创 2021-01-07 21:41:57 · 324 阅读 · 0 评论 -
复杂类型作函数参数之数组的输入与输出
Description数组的输入与输出。编写程序,通过函数给数组输入若干不小于0的整数,用负数作为输入结束标志,通过另一函数输出该数组中的数据。#include <stdio.h>#define M 100 /* M表示元素个数不超过100 */void array_out(int *, int); /* 函数原型,输出元素个数 */int array_in(int *); ...原创 2021-01-07 21:40:54 · 989 阅读 · 0 评论 -
复杂类型作函数参数之逆序输出
Description将数组a中的n个整数按逆序输出。#include"stdio.h"void inv(int *, int); /* 输出反序后的数据 */void out(int *, int); /* 输出原始数据 */int main( ){ int a[100]; int n,i; scanf("%d",&n); for( i = 0...原创 2021-01-07 21:39:05 · 804 阅读 · 0 评论 -
复杂类型作函数参数之结构体指针做参数(1)
#include <stdio.h>#include <string.h>struct student /* 定义结构体类型 */{ char name[20]; long num; char gender; float score;};void modify(struct student *p){ strcpy(p->na...原创 2021-01-06 16:52:17 · 249 阅读 · 0 评论 -
复杂类型作函数参数之结构体指针做参数 (2)
Description用结构体指针做参数,修改结构体变量的值。#include <stdio.h>#include <string.h>struct student /* 定义结构体类型 */{ char name[20]; long num; char gender; float score;};//begin...原创 2021-01-06 16:51:15 · 323 阅读 · 0 评论 -
分数减法——结构体
#include<stdio.h>struct fenshu{ int above; char line; int below;};void sub(struct fenshu a,struct fenshu b){ struct fenshu c; c.above=a.above-b.above; printf("%d%c%d",c.above,a.line,a.below);}int main(){...原创 2021-01-06 16:50:24 · 398 阅读 · 0 评论 -
动态规划基础题目之最长上升子序列
题目描述一个数的序列bi,当b1 < b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1 <= i1 < i2 < ... < iK <= N。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5原创 2021-01-06 16:49:06 · 1067 阅读 · 0 评论