2-8 合并有序数组分数 7
作者 伍建全
单位 重庆科技大学
给定2个非降序序列,要求把他们合并成1个非降序序列。假设所有元素个数为N,要求算法的时间复杂度为O(N)。
输入格式:输入有4行。第1行是一个正整数m,表示第2行有m个整数,这些整数构成一个非降序序列,每个整数之间以空格隔开。第3行是一个正整数n,表示第4行有n个整数,这些整数也构成一个非降序序列,每个整数之间以空格隔开。
输出格式:把第2行的m个整数和第4行的n个整数合并成一个非降序序列,输出这个整数序列。每个数之间隔1个空格。
输入样例:123461 3 6 6 8 9 42 4 5 7
输出样例:11 2 3 4 5 6 6 7 8 9
答案1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980#include <iostream>using names ...
2-7 运用顺序表实现多项式相加分数 7
作者 胡艳梅
单位 成都理工大学
本题要求输入两个一元多项式,然后输出它们的和(相加后得到的一元多项式)
输入格式:输入一个整数n(表示输入组数),然后依次输入每一组数据:输入一个整数A(表示多项式的项数,小于100),然后输入A对整数,每一对整数表示对应项的指数和系数。
输出格式:对每一组输入,在一行中输出得到的一元多项式。
输入样例:在这里给出一组输入。例如:
1234567891011121314151617181920250 21 45 77 108 1940 32 64 195 -930 34 78 230 -35 97 21
输出样例:在这里给出相应的输出。例如:
125x^0+4x^1+6x^2+19x^4-2x^5+10x^7+19x^87x^4+9x^5+21x^7+2x^8
答案123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 ...
2-6 顺序表(删除)分数 6
作者 邵煜
单位 宁波财经学院
已知一组数据,采用顺序存储结构存储,其中所有的元素为整数。设计一个算法,删除元素值在[x,y]之间的所有元素
输入格式:输入包含三行数据,第一行是表中元素个数,第二行是顺序表的各个元素,第三行是区间x和y。
输出格式:删除元素值在[x,y]之间的所有元素后,输出新的顺序表。(最后无空格)
输入样例:在这里给出一组输入。例如:
1231055 11 9 15 67 12 18 33 6 2210 20
输出样例:在这里给出相应的输出。例如:
155 9 67 33 6 22
答案12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#include <iostream>using namespace std;// 定义顺序表结构typedef struct { int *data; int length;} sqList;void initLi ...
2-5 集合减法分数 6
作者 朱允刚
单位 吉林大学
给定两个非空集合A和B,集合的元素为30000以内的正整数,编写程序求A-B。
输入格式:输入为三行。第1行为两个整数n和m,分别为集合A和B包含的元素个数,1≤n, m ≤10000。第2行表示集合A,为n个空格间隔的正整数,每个正整数不超过30000。第3行表示集合B,为m个空格间隔的正整数,每个正整数不超过30000。
输出格式:输出为一行整数,表示A-B,每个整数后一个空格,各元素按递增顺序输出。若A-B为空集,则输出0,0后无空格。
输入样例:1235 51 2 3 4 53 4 5 6 7
输出样例:11 2
我的超时代码123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263#include <iostream>using namespace std;// 定义顺序表结构typedef struct { i ...
2-4 在指定位置插入元素分数 6
作者 张志梅
单位 青岛大学
给出 n 个整数,在指定位置 pos(位置从1起始)前插入给定的值 val,请输出插入后的整数序列。
输入格式:包含多组测试。第一行会有一个 T 表示组数 (1<=T<=20),每组测试的第一行输入三个数 n , pos , val,第二行输入n个整数。其中,1<=n<=100,1<=pos<=n+1,1<=val<=100。
输出格式:每组测试输出包含一行,行末不允许有多余的空格。
输入样例:1234525 1 41 2 3 4 56 3 92 4 6 8 0 2
输出样例:124 1 2 3 4 52 4 9 6 8 0 2
答案123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include <iostream>using namespace std;// 定义顺序表结构typedef struct ...
2-3 最长连续递增子序列分数 6
作者 DS课程组
单位 浙江大学
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。
输入格式:输入第1行给出正整数n(≤105);第2行给出n个整数,其间以空格分隔。
输出格式:在一行中输出第一次出现的最长连续递增子序列,数字之间用空格分隔,序列结尾不能有多余空格。
输入样例:12151 9 2 5 7 3 4 6 8 0 11 15 17 17 10
输出样例:13 4 6 8
答案123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include <iostream>using namespace std;// 定义顺序表结构:存储数据的数组和表长typedef struct { int *data; int length;} sqLis ...
2-2 数组循环左移分数 6
作者 DS课程组
单位 浙江大学
本题要求实现一个对数组进行循环左移的简单函数:一个数组a中存有n(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向左移m(≥0)个位置,即将a中的数据由(a0a1⋯a*n−1)变换为(am⋯an−1a0a1⋯a*m−1)(最前面的m个数循环移至最后面的m个位置)。如果还需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?
输入格式:输入第1行给出正整数n(≤100)和整数m(≥0);第2行给出n个整数,其间以空格分隔。
输出格式:在一行中输出循环左移m位以后的整数序列,之间用空格分隔,序列结尾不能有多余空格。
输入样例:128 31 2 3 4 5 6 7 8
输出样例:14 5 6 7 8 1 2 3
我的答案(虽然是对的,但是有更好的,见后面)12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152#include <iostream>using ...
2-1 两个有序序列的中位数分数 6
作者 DS课程组
单位 浙江大学
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0,A1,⋯,A*N−1的中位数指*A(N−1)/2的值,即第⌊(N+1)/2⌋个数(A0为第1个数)。
输入格式:输入分三行。第一行给出序列的公共长度N(0<N≤100000),随后每行输入一个序列的信息,即N个非降序排列的整数。数字用空格间隔。
输出格式:在一行中输出两个输入序列的并集序列的中位数。
输入样例1:12351 3 5 7 92 3 4 5 6
输出样例1:14
输入样例2:1236-100 -10 1 1 1 1-50 0 2 3 4 5
输出样例2:11
答案123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475#include <iostream>using ...
本文引用手把手教你搭建阿里云图床(PicGo+Typora+阿里云OSS),新手小白一看就会-阿里云开发者社区
手把手教你搭建阿里云图床(PicGo+Typora+阿里云OSS),新手小白一看就会简介: 本文详细介绍了怎样帮助新手小白从注册,购买阿里云OSS,到一步一步配置OSS做为图床,和PicGo、Typora软件连接,配置好关联之后,在使用Typora写文章时,如果需要插入图片,只需要将图片复制粘贴到Typora的编辑区域,就会自动通过PicGo上传到指定图床,自动复制外网能访问的URL并展示,简直不要太方便,极大的解决了编辑文章时复制处理图片链接的痛点。
为什么要搭建图床?经常在博客写文章或者搭建自己的网站时,肯定需要往里面加图片对吧。有人可能会想,我直接把图片保存在电脑上不就行了?其实这样也不是不可以,但问题来了,如果你想把你的文章转载到别的地方,那些在本地的图片别人是看不到的,你得一个个去复制粘贴,真是够呛!
这时候,如果用阿里云OSS或者腾讯云COS来搭建一个图床,问题就迎刃而解了。用这些服务,处理图片简直高效到不行。说到国内用得多的,腾讯云和阿里云绝对是排前面的,速度快 ...
实验2-1 求链式线性表的倒数第 m 项(C++版)分数 20
作者 刘凯源
单位 华东师范大学
请设计时间和空间上都尽可能高效的算法,求链式存储的线性表的倒数第m(>0)个元素。
函数接口定义:12template <typename ElemType>ElemType LinkedList<ElemType>::Find(int m)
其中LinkedList结构定义如下
123456789101112131415161718192021222324252627template <typename ElemType>class LinkedList{ public: struct ListNode { // 单链表的结点类型 ElemType data_; // 存储数据 ListNode* next_; // 线性表中下一个元素的位置 }; using Position = ListNode*; // 指针即结点位置 struct ListExce ...


