- 博客(44)
- 收藏
- 关注
原创 堆(伪码)
typedef struct HNode *Heap; /* 堆的类型定义 */struct HNode { ElementType *Data; /* 存储元素的数组 */ int Size; /* 堆中当前元素个数 */ int Capacity; /* 堆的最大容量 */};typedef Heap MaxHeap; /* 最大堆 ...
2020-04-07 21:05:53
343
原创 二叉搜索树(伪码)
// 二叉搜索树//二叉搜索树(BST,Binary Search Tree), //也称二叉排序树或二叉查找树 //查找的递归实现Posotion Find(ElementType X,BinTree BST){ if(!BST) return NULL ; //查找失败 if(X > BST->Data)...
2020-04-07 20:30:57
1286
原创 CSP认证 2019 03-2 二十四点
分析:学过数据结构的应该都可以做出来,这就是一个典型的栈的应用#include<iostream>#include<stack>using namespace std ;int main(){ int n ; cin>>n ; char str[10] ; while(n--) { stack<int>s1 ; ...
2020-02-11 17:56:24
286
原创 CSP认证 2019 03-1 小中大
#include<iostream>#include<algorithm>using namespace std ;int main(){ int n ; cin>>n ; int s[n+1] ; for(int i=0;i<n;i++) cin>>s[i] ; sort(s,s+n) ; int min =...
2020-02-11 17:07:35
242
原创 CSP认证 2019 09-2 小明种苹果(续)
#include<stdio.h>int s[1010]={0} ;int Front(int n){ int id = -1 ; for(int i=0;i<n;i++) { if(s[i]==0) { id = i ; break ; } } return id ;}int Back(int n) { int...
2020-02-09 14:57:53
170
原创 CSP认证 2019 09-1 小明种苹果
#include<stdio.h>int drop[1000+5][1000+5]={0} ;int main(){ int n,m ; scanf("%d%d",&n,&m) ; int sum_apple = 0 ; int id = 0 ; int max_drop = 0 ; for(int i=1;i<=n;i++) { ...
2020-02-08 16:36:38
186
原创 CSP认证 2019 12-2 回收站选址
#include<stdio.h>struct coordinate{ int x; int y; };int main(){ int n ; scanf("%d",&n) ; coordinate cre[n] ; for(int i=0;i<n;i++) scanf("%d%d",&cre[i].x,&...
2020-02-06 17:24:33
489
原创 CSP认证 2019 12-1 报数
#include<stdio.h>//判断是否是7的倍数,或者数字中含有7int compare(int x){ int flag = 0 ; if(x%7==0) flag = 1 ; while(x!=0) { if(x%10==7) flag = 1 ; x = x/10 ; } return flag ;} int main(...
2020-02-05 15:54:00
553
原创 Ubuntu环境下安装Anaconda3
Anaconda3的下载清华大学开源软件镜像站 :https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/可下载Linux环境下最新的版本将其下载到Downloads目录下Anaconda3的安装首先打开命令终端,切换Downloads目录下,执行bashAnaconda3-5.3.1-Linux-x86_64.sh ...
2019-08-04 12:04:47
536
原创 最短路径—Dijkstra算法
#include<cstdio>#define MAXV 50#define INF 10000using namespace std ;typedef struct{ int edges[MAXV][MAXV] ; //邻接矩阵的边数组 int n ; //定点数 int e ; //边数}MGraph; int dist[MAXV] ;int...
2019-08-02 18:02:03
279
原创 05、线性规划
线性规划问题是在一组线性约束条件的限制下,求一线性目标函数最大或最小的问题。在解决实际问题时,把问题归结成一个线性规划数学模型是很重要的一步,但往往也是困难的一步,模型建立得是否恰当,直接影响到求解。而选适当的决策变量,是我们建立有效模型的关键之一。一般线性规划问题的(数学)标准型为可行解满足约束条件(4)的解x=(x1,x…,x,),称为线性规划问题的可行解,而使目标函数(3...
2019-07-10 15:45:42
684
原创 04、遗传算法的MATLAB程序设计
一、程序设计流程及参数选取 1、遗传算法的程序设计伪代码BEGIN t=0;%遗传代数 初始化P(t);初始化种群或染色体 计算P(t)的适应值; while(不满足停止准则)do begin t=t+1; 从P(t-1)中选择P(t);%选择 重组P(t);%交叉和变异 计算...
2019-07-09 16:16:26
2411
原创 03、数据挖掘
一、数据挖掘建模过程 1、数据取样 2、数据探索 3、模式发现 4、数据建模 5、模型评估(误差分析)二、数据挖掘的基本任务 1、分类与预测 有目标的对事物进行分类预测,如:文本分类、手写体识别等。 2、关联规则 关联模式挖掘旨在从大量的数据当中发现特征之间或数据之间的相互依赖关...
2019-07-08 14:14:33
393
原创 02、MATLAB之数据插值
一、一维插值函数插值函数:yi = interp1(x,y,xi,'method')yi : xi处的插值结果x、y :插值节点xi : 被插值点method :插值方法(下面四种)1、‘nearest':最邻近插值 2、‘1inear':线性插值 3、‘cubic':立方次插值 4、‘spline':三次样条插值 缺省时:分...
2019-07-07 18:19:29
5470
1
原创 02、MATLAB实现身份证号码的鉴别
使用matlab编写程序实现身份证号码的鉴别str=input('please input a ID:','s');idstr = str(1:3) ;%截取前三位省份信息id = str2num(idstr) ;%将字符串类型的省份信息转换为数值型x1 = str(7:10); %截取出生年份信息 %str(1:2) %截取指定位置的字符串nian= str2nu...
2019-07-06 19:51:56
3730
原创 01、Matlab的安装及简单应用
Matlab是一款很强大数学方面的应用软件,编写程序的语法结构只要有C语言基础的上手很容易(1)高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来。(2)具有完备的图形处理功能,实现计算结果和编程的可视化。(3)具有友好的用户界面及接近数学表达式的自然化语言,易于学习和掌握。Matlab在安装时很容易出现错误,主要有以下三个方面的错误: 1、安装路径中有文件夹的...
2019-07-05 21:05:49
27469
16
原创 ZZULI OJ 1546: 小L的加法器(优先队列)
题目描述给定n个正整数让小L计算累加和,聪明的小L设计了一个加法器,但是加法器一次只能进行两个数的加法运算,而且两数和越大,相加的过程用时越长,假定一次加法操作用时正好为两个数的和,累加过程有很多方案,请你给出这些方案中,使n个数累加起来最少的用时是多少?输入第一行输入一个整数n(1<=n<=104),表示用来累加的数字个数,第二行输入n个数xi(1<=xi<=...
2019-04-09 14:07:09
229
原创 L1-3 敲笨钟 (20 分)
微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。为了增加敲钟的趣味性,还会糟改几句古诗词。其糟改的方法为:去网上搜寻压“ong”韵的古诗词,把句尾的三个字换成“敲笨钟”。例如唐代诗人李贺有名句曰:“寻章摘句老雕虫,晓月当帘挂玉弓”,其中“虫”(chong)和“弓”(gong)都压了“ong”韵。于是这句诗就被糟改为“寻章摘句老雕虫,晓月当帘敲笨钟”。现在给你一大堆古诗词句...
2019-04-05 14:00:10
572
原创 7-24 单身狗 (25 分)
单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。输入格式:输入第一行给出一个正整数 N(≤50000),是已知夫妻/伴侣的对数;随后 N 行,每行给出一对夫妻/伴侣——为方便起见,每人对应一个 ID 号,为 5 位数字(从 00000 到 99999),ID 间以空格分隔;之后给出一个正整数 M(≤10000),为参加派对的总人数;随后一...
2019-03-28 15:49:45
2221
原创 7-19 部落 (25 分) 并查集
在一个社区里,每个人都有自己的小圈子,还可能同时属于很多不同的朋友圈。我们认为朋友的朋友都算在一个部落里,于是要请你统计一下,在一个给定社区中,到底有多少个互不相交的部落?并且检查任意两个人是否属于同一个部落。输入格式:输入在第一行给出一个正整数N(≤104),是已知小圈子的个数。随后N行,每行按下列格式给出一个小圈子里的人:K P[1] P[2] ⋯ P[K]其中K是小圈子...
2019-03-27 20:47:44
413
原创 7-9 朋友圈 (25 分) 并查集
某学校有N个学生,形成M个俱乐部。每个俱乐部里的学生有着一定相似的兴趣爱好,形成一个朋友圈。一个学生可以同时属于若干个不同的俱乐部。根据“我的朋友的朋友也是我的朋友”这个推论可以得出,如果A和B是朋友,且B和C是朋友,则A和C也是朋友。请编写程序计算最大朋友圈中有多少人。输入格式:输入的第一行包含两个正整数N(≤30000)和M(≤1000),分别代表学校的学生总数和俱乐部的个数。后面的M...
2019-03-27 17:05:11
471
原创 7-8 电话聊天狂人 (25 分)
给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。输入格式:输入首先给出正整数N(≤105),为通话记录条数。随后N行,每行给出一条通话记录。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。输出格式:在一行中给出聊天狂人的手机号码及其通话次数,其间以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人...
2019-03-27 12:39:57
868
原创 L1-027 出租 (20 分)
下面是新浪微博上曾经很火的一张图:一时间网上一片求救声,急问这个怎么破。其实这段代码很简单,index数组就是arr数组的下标,index[0]=2 对应 arr[2]=1,index[1]=0 对应 arr[0]=8,index[2]=3 对应 arr[3]=0,以此类推…… 很容易得到电话号码是18013820100。本题要求你编写一个程序,为任何一个电话号码生成这段代码 —...
2019-03-24 14:15:40
278
原创 7-10 接话茬 (25 分)
小CC最喜欢的就是接话茬,别人说一句,小CC就会接着他的话尾巴继续说下去,然后告诉他这是“顶针”修辞手法,活活将人气死。小XX也喜欢接话茬,每天都要与小CC比较技艺。然而无论是谁,都会被他们活活气死,因此两人总是难决胜负。后来小CC和小XX一起上了厦门大学,学习了校选课《接话茬数学原理与杠精的自我修养》,他们决定对两人的接话茬水平进行定量评估。他们约定比赛规则如下,随机找一个倒霉的路人,路人说...
2019-03-22 16:37:12
2720
原创 7-8 集合相似度 (25 分)--------STL--set
给定两个整数集合,它们的相似度定义为:Nc/Nt×100%。其中Nc是两个集合都有的不相等整数的个数,Nt是两个集合一共有的不相等整数的个数。你的任务就是计算任意一对给定集合的相似度。输入格式:输入第一行给出一个正整数N(≤50),是集合的个数。随后N行,每行对应一个集合。每个集合首先给出一个正整数M(≤104),是集合中元素的个数;然后跟M个[0,10...
2019-03-22 15:43:04
245
原创 快速幂,快速乘
1、快速幂(乘法实现)eg : 2^7 (2的7次方)7 的二进制数为 1112^1 = 2 ;2^2 = 2^1 * 2^12^4 = 2^2 * 2^2 2^7 = 2^4 * 2^2 * 2^1#include<stdio.h>long long Fast_power(long long a,l...
2019-03-20 11:26:43
253
原创 说反话-加强版 (20 分)
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过500 000的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用若干个空格分开。输出格式:每个测试用例的输出占一行,输出倒序后的句子,并且保证单词间只有1个空格。输入样例:Hello World H...
2019-03-16 20:00:55
1803
原创 翻转单词顺序 (20 分)
L1-5 翻转单词顺序 (20 分)给定一个字符串,翻转该字符串,翻转时单词中的字符顺序不变。例如,如果字符串为"Hello World",则翻转后为"World Hello"。单词间以一个或多个空格分隔。注意,字符串开头和结尾都可能有多个空格。输入格式:输入可能包括多行。每行代表一个字符串,除了空格外,标点符号和普通字母一样处理。你可以认为一行的字符总数不会超过50000个,单词数不...
2019-03-16 19:57:13
7767
1
原创 7-6 图着色问题 (25 分)
图着色问题是一个著名的NP完全问题。给定无向图G=(V,E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色?但本题并不是要你解决这个着色问题,而是对给定的一种颜色分配,请你判断这是否是图着色问题的一个解。输入格式:输入在第一行给出3个整数V(0<V≤500)、E(≥0)和K(0<K≤V),分别是无向图的顶点数、边数、以及颜色数。顶点和...
2019-03-13 10:09:29
1398
原创 深度优先搜索,广度优先搜索
深度优先搜索:#include<stdio.h>int book[101],sum,n,e[101][101] ;void dfs(int cur){ printf("%d ",cur) ; sum++ ; //每访问一个顶点,sum就加一 if(sum==n) return ;//所有的顶点都已经访问过则直接退出 for(int i=1;i<=n...
2019-03-12 13:53:16
136
原创 7-36 简易连连看 (20 分)
本题要求实现一个简易连连看游戏模拟程序。给定一个2N×2N的方阵网格游戏盘面,每个格子中放置一些符号。这些符号一定是成对出现的,同一个符号可能不止一对。程序读入玩家给出的一对位置(x1,y1)、(x2,y2),判断这两个位置上的符号是否匹配。如果匹配成功,则将两个符号消为“*”并输出消去后的盘面;否则输出“Uh-oh”。若匹配错误达到3次,则输出“Game Over”并...
2019-02-28 17:32:54
1125
原创 7-50 字符串的冒泡排序 (20 分)
我们已经知道了将N个整数按从小到大排序的冒泡排序法。本题要求将此方法用于字符串序列,并对任意给定的K(<N),输出扫描完第K遍后的中间结果序列。输入格式:输入在第1行中给出N和K(1≤K<N≤100),此后N行,每行包含一个长度不超过10的、仅由小写英文字母组成的非空字符串。输出格式:输出冒泡排序法扫描完第K遍后的中间结果序列,每行包含一个字符串。输入样例:6...
2019-02-28 16:06:40
1549
原创 7-8 模拟EXCEL排序 (25 分)
Excel可以对一组纪录按任意指定列排序。现请编写程序实现类似功能。输入格式:输入的第一行包含两个正整数N(≤105) 和C,其中N是纪录的条数,C是指定排序的列号。之后有 N行,每行包含一条学生纪录。每条学生纪录由学号(6位数字,保证没有重复的学号)、姓名(不超过8位且不包含空格的字符串)、成绩([0, 100]内的整数)组成,相邻属性用1个空格隔开。输出格式:在N行中输出...
2019-02-18 14:07:02
1882
原创 7-16 点赞 (20 分)
7-16 点赞 (20 分)微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。输入格式:输入在第一行给出一个正整数N(≤1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“K F1⋯FK...
2019-02-18 13:08:45
1780
原创 7-14 互评成绩 (25 分)
7-14 互评成绩 (25 分)学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取平均,就得到这个学生的最后成绩。本题就要求你编写这个互评系统的算分模块。输入格式:输入第一行给出3个正整数N(3 < N ≤104,学生总数)、k(3 ≤ k ≤ 10,每份作业的评审数)、M(≤ 20,需要输出的学...
2019-02-14 16:26:43
863
原创 7-4 找鞍点 (20 分)
一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。输入格式:输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。输出格式:输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。输入样例1...
2019-02-14 14:45:17
1891
原创 7-10 最长连续递增子序列 (20 分)
给定一个顺序存储的线性表,请设计一个算法查找该线性表中最长的连续递增子序列。例如,(1,9,2,5,7,3,4,6,8,0)中最长的递增子序列为(3,4,6,8)。输入格式:输入第1行给出正整数n(≤105);第2行给出n个整数,其间以空格分隔。输出格式:在一行中输出第一次出现的最长连续递增子序列,数字之间用空格分隔,序列结尾不能有多余空格。输入样例:151 9 ...
2019-02-13 14:20:57
1625
原创 判断上三角矩阵
上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。输入格式:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。输出格式:每个矩阵的判断结果占一行。如果输入的矩阵是上三角矩阵,输出...
2019-02-09 13:25:45
3445
1
原创 C++ STL--string库应用
#include<iostream>#include<string>using namespace std ;int main(){ //string 的赋值操作 string s1 = "qwert" ; string s2(5,'a') ; string s3("zxcvbnm") ; string s4(s2) ; cout<<s1...
2019-01-22 11:51:29
152
原创 整数反转(二)
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。测试代...
2018-12-31 14:45:58
198
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人