- 博客(44)
- 收藏
- 关注
原创 根据函数依赖求候选码
算法:按以下步骤求候选键:1.只在FD右部出现的属性,不属于候选码;2.只在FD左部出现的属性,一定存在于某候选码当中;3.外部属性一定存在于任何候选码当中;4.其他属性逐个与2,3的属性组合,求属性闭包,直至X的闭包等于U,若等于U,则X为候选码。例1:R<U,F>,U=(A,B,C,D,E,G),F={AB–>C,CD–>E,E–>A.A–>G},求候选码。因G只在右边出现,所以G一定不属于候选码;而B,D只在左边出现,所以B,D一定属于候选码;BD的闭包
2021-12-05 14:57:27 4188 4
原创 链表中环的入口结点
描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。输入描述:输入分为2段,第一段是入环前的链表部分,第二段是链表环的部分,后台将这2个会组装成一个有环或者无环单链表返回值描述:返回链表的环的入口结点即可。而我们后台程序会打印这个节点示例1输入:{1,2},{3,4,5}返回值:3说明:返回环形链表入口节点,我们后台会打印该环形链表入口节点,即3示例2输入:{1},{}返回值:“null”说明:没有环,返回null,后台打印"null"示例3
2021-08-02 10:56:24 80
原创 反转链表-java
描述 输入一个链表,反转链表后,输出新链表的表头。示例1 输入:{1,2,3}返回值:{3,2,1}/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class Solution { public ListNode ReverseList(ListNode head) { .
2021-07-29 11:15:51 129 1
原创 判断链表中是否有环
描述判断给定的链表中是否有环。如果有环则返回true,否则返回false。 你能给出空间复杂度的解法么?输入分为2部分,第一部分为链表,第二部分代表是否有环,然后回组成head头结点传入到函数里面。-1代表无环,其他的数字代表有环,这些参数解释仅仅是为了方便读者自测调试示例1输入:{3,2,0,-4},1返回值:true说明:第一部分{3,2,0,-4}代表一个链表,第二部分的1表示,-4到位置1,即-4->2存在一个链接,组成传入的head为一个带环的链表 ,返回true
2021-07-29 10:49:16 158
原创 关于计网的那些事
一般认为,计算机网络是一个将分散的,具有独立功能的计算机系统,通过通信设备与线路连接起来,有功能完善的软件实现资源共享和信息传递的系统。简而言之,计算机网络就是一些互联的,自治的计算机系统的集合。计算机网络的组成可分为如下几类:从组成部分上看,一个完整的计算机网络主要由硬件、软件、协议三大部分组成,缺一不可;从工作方式上看,计算机网络(这里主要指Internet)可分为边缘部分和核心部分;从功能组成上看,计算机网络由通信子网和资源子网组成。计算机网络的功能为数据通信,资源共享,分布式处理,提高可靠性,负载
2021-05-08 15:39:44 142
原创 字符串的展开
1 2 1abcs-w1234-9s-4zz2 3 2a-d-d#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<string>#include<cctype>using namespace std;int main(){ ios::sync_with_stdio(false); int.
2021-01-27 18:42:37 376 1
原创 魔法少女小Scarlet-19物联网张春
题目描述Scarlet最近学会了一个数组魔法,她会在n*n二维数组上将一个奇数阶方阵按照顺时针或者逆时针旋转90°,首先,Scarlet会把1到 n^2 的正整数按照从左往右,从上至下的顺序填入初始的二维数组中,然后她会施放一些简易的魔法。Scarlet既不会什么分块特技,也不会什么Splay套Splay,她现在提供给你她的魔法执行顺序,想让你来告诉她魔法按次执行完毕后的二维数组。输入格式第一行两个整数n,m,表示方阵大小和魔法施放次数。接下来m行,每行4个整数x,y,r,z,表示在这次魔法中
2021-01-25 17:46:55 140
原创 全排列-不需要用递归-19物联网张春
#include<stdio.h>#include<iostream>#include<algorithm>using namespace std;int main(){ int a[10000]; int n; cin>>n; int i,j,k; for(i=1; i<=n; i++) a[i]=i; for(i=1; i<=n; i++) printf.
2021-01-22 19:30:29 70
原创 Meteor Shower S-19物联网张春
题目描述Bessie hears that an extraordinary meteor shower is coming; reports say that these meteors will crash into earth and destroy anything they hit. Anxious for her safety, she vows to find her way to a safe location (one that is never destroyed by a meteo
2021-01-21 18:11:24 95
原创 马的遍历-19物联网张春
题目描述有一个n*m的棋盘(1<n,m<=400),在某个点上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步输入格式一行四个数据,棋盘的大小和马的坐标输出格式一个n*m的矩阵,代表马到达某个点最少要走几步(左对齐,宽5格,不能到达则输出-1)输入输出样例输入 #13 3 1 1输出 #10 3 2 3 -1 1 2 1 4 #include<stdio.h>#include<queue
2021-01-20 18:12:14 116 1
原创 回文日期-19物联网张春
【问题描述】2020年春节期间,有一个特殊的日期引起了大家的注意:2020年2月2日。因为如果将这个日期按“yyyymmdd”的格式写成一个8位数是20200202,恰好是一个回文数。我们称这样的日期是回文日期。有人表示20200202是“千年一遇”的特殊日子。对此小明很不认同,因为不到2年之后就是下一个回文日期:20211202即2021年12月2日。也有人表示20200202并不仅仅是一个回文日期,还是一个ABABBABA型的回文日期。对此小明也不认同,因为大约100年后就能遇到下一个ABABBABA
2021-01-17 17:39:18 158
原创 约瑟夫问题-19物联网张春
#include<stdio.h>int main(){ int n,m,a[110]={0},t=1; scanf("%d%d",&n,&m); int num=n; while(num) { int k=0; for(int i=t;;i++) { if(i>n)i=i%n; if(a[i]==1) .
2021-01-16 16:32:05 114
原创 2021-01-08
从基于时间的比较、基于空间的比较来分析线性表的两种存储方式顺序结构、链式结构的优缺点:顺序存储:i:优点1.存储密度大,存储密度为1;2.表中数据元素可随机存取,顺序表具有按元素序号随机访问的特点,即0(1);3.逻辑结构与物理结构是统一的,其中的元素都是顺序存储的;ii:缺点1.做插入、删除操作时,要移动大量元素,因此对很长的顺序表操作效率低,插入和删除操作不方便;2、要预先分配存储空间,预先估计过大,会导致存储空间浪费,估计过小,会造成数据溢出。链式存储:i:优点1.做插入、删除操
2021-01-08 14:37:47 1350
原创 6-2 顺序表的查找操作 (10分)-19物联网张春
6-2 顺序表的查找操作 (10分)本题要求实现一个函数,要求从顺序表中查找指定元素,并返回第一个查找成功的元素在表中的位置序号,若查找失败,则返回0;函数接口定义:int LocateElem(SqList L,ElemType e);其中SqList结构定义如下:typedef struct{ ElemType *elem; int length; }SqList;```裁判测试程序样例:```c#include <stdio.h>#includ
2021-01-07 19:51:36 553
原创 6-1 顺序表的插入操作 (10分)-19物联网张春
6-1 顺序表的插入操作 (10分)本题要求实现一个函数,在顺序表的第i个位置插入一个新的数据元素e,插入成功后顺序表的长度加1,函数返回值为1;插入失败函数返回值为0;函数接口定义:int ListInsert(SqList &L,int i,ElemType e);其中SqList结构定义如下:typedef struct{ ElemType *elem; int length; }SqList;裁判测试程序样例:#include <stdio.h>
2021-01-07 19:49:37 2458 1
原创 2021-01-07-张春
线性表存储空间长度和线性表长度区别:线性表存储空间的长度就是初始化数组的长度,一般是不变的。线性表的长度是线性表中实际数据元素的个数,随着插入和删除操作,这个量是变化的...
2021-01-07 16:24:20 102
原创 图的基本操作-拓扑排序 (20分)-张春
6-1 实验四图的基本操作-拓扑排序 (20分)实验四 图的基本操作-拓扑排序。1、要求学生理解和掌握图的基本概念;2、要求学生深刻理解图的主要的存储结构;3、掌握在邻接表存储结构下的图的深度优先遍历、广度优先遍历;4、掌握图的拓扑排序算法。本题要求根据程序中的图实现一个拓扑排序函数,无输入,直接输出拓扑排序结果,例如:A B C D E F (拓扑排序顶点序列,中间用两个空格间隔)。函数接口定义:在这里描述函数接口。例如:void TopologicalSort(PGraph g)裁判测试程序
2021-01-07 11:04:22 2538 1
原创 7-2 词典 (15分)19物联网张春
7-2 词典 (15分)你刚从滑铁卢搬到了一个大城市,这里的人们讲一种难以理解的外语方言。幸运的是,你有一本字典来帮助你理解它们。输入格式:输入第一行是正整数N和M,后面是N行字典条目(最多10000条),然后是M行要翻译的外语单词(最多10000个)。每一个字典条目都包含一个英语单词,后面跟着一个空格和一个外语单词。 输入中的每个单词都由最多10个小写字母组成。输出格式:输出翻译后的英文单词,每行一个单词。非词典中的外来词汇输出“eh”。输入样例:5 3dog ogdaycat atca
2021-01-07 10:59:42 1763
原创 2021/1/5-张春
判断图的关键路径上任意活动的延期都会引起工期的延长。 T所有的排序算法中,关键字的比较操作都是不可避免的。 F某二叉树的前序和中序遍历序列正好一样,则该二叉树中的任何结点一定都无左孩子。 T折半查找的判定树一定是平衡二叉树。 (2分)T查找某元素时,折半查找法的查找速度一定比顺序查找法快。 (2分)F用邻接矩阵法存储图,占用的存储空间数只与图中结点个数有关,而与边数无关。 (2分)T邻接矩阵的空间复杂度为O(n2),与边的个数无关。邻接表的空间复杂度为O(n+e),与图中的结点个数和边的个
2021-01-05 20:56:50 625
原创 删除单链表中最后一个与给定值相等的结点-19物联网张春
6-3 删除单链表中最后一个与给定值相等的结点 (10分)本题要求在链表中删除最后一个数据域取值为x的节点。L是一个带头结点的单链表,函数ListLocateAndDel_L(LinkList L, ElemType x)要求在链表中查找最后一个数据域取值为x的节点并将其删除。例如,原单链表各个节点的数据域依次为1 3 1 4 3 5,则ListLocateAndDel_L(L,3)执行后,链表中剩余各个节点的数据域取值依次为1 3 1 4 5。函数接口定义:void ListLocateAndDel
2021-01-03 10:47:07 175
原创 按值查找单链表-19物联网张春
6-1 按值查找单链表 (10分)本题要求实现一个函数,Locate_LinkList(LinkList L, datatype x)函数是在带头结点单链表中查找值为x的结点。函数须返回找到结点的指针,没有找到返回空。函数接口定义:LNode *Locate_LinkList(LinkList L, datatype x);其中 L 和 x 都是用户传入的参数。 L 是单链表的头指针; x 是需要查找的值。函数须返回找到结点的指针,没有找到返回空。裁判测试程序样例:在这里给出函数被调用进行测试
2021-01-03 10:44:00 2138
原创 7-1 城市间紧急救援 (25分)
7-1 城市间紧急救援 (25分)作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0 ~ (N−1);M是快速道路的条数;S是出发地的城市编号;D是目的地
2020-12-23 11:10:43 2219 1
原创 7-16 春游
7-16 春游 (25分)春天阳光灿烂,小宋突然心血来潮想骑自行车去学校外面玩,但是到达目的地的路线不止一条,他想尽快的到达目的地,又能不需要骑太远的路, 你能帮助他吗?输入格式:输入包含一个测试数据,第一行有三个整数n(2 <= n <= 1000),途中可能经过的地点的个数,地点编号1~n;m(1 <= m <= 10000),为路径的条数;d(2 <= d <= n),目的地编号;其中学校为起点,默认为1。接下来m行: x y time dist , x y表
2020-12-23 10:52:24 1650 1
原创 哈哈哈哈
import java.util.Scanner;import java.util.Stack;public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input=new Scanner(System.in); String s=input.nextLine(); if(s.isEmpty()) {System.
2020-10-30 16:16:20 92
原创 L1-049 天梯赛座位分配 (20分)--19物联网张春
天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员…… 以此类推。如果最后只剩下 1 所学校的队伍还没有分配座位,则需要安排他们的队员隔位就坐。本题就要求你编写程序,自动为各校生成队员的座位号,从 1 开始
2020-10-24 11:01:06 128
原创 L1-048 矩阵A乘以B (15分)-19物联网张春
L1-048 矩阵A乘以B (15分)给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra 行、Ca列,B有Rb行、Cb列,则有Ca与Rb相等时,两个矩阵才能相乘。输入格式:输入先后给出两个矩阵A和B。对于每个矩阵,首先在一行中给出其行数R和列数C,随后R行,每行给出C个整数,以1个空格分隔,且行首尾没有多余的空格。输入保证两个矩阵的R和C都是正数,并且所有整数的绝对值不超过10...
2020-10-24 09:57:28 219
原创 L1-046 整除光棍 (20分)-19物联网张春
这里所谓的“光棍”,并不是指单身汪啦~ 说的是全部由1组成的数字,比如1、11、111、1111等。传说任何一个光棍都能被一个不以5结尾的奇数整除。比如,111111就可以被13整除。 现在,你的程序要读入一个整数x,这个整数一定是奇数并且不以5结尾。然后,经过计算,输出两个数字:第一个数字s,表示x乘以s是一个光棍,第二个数字n是这个光棍的位数。这样的解当然不是唯一的,题目要求你输出最小的解。提示:一个显然的办法是逐渐增加光棍的位数,直到可以整除x为止。但难点在于,s可能是个非常大的数 —— 比如,程序
2020-10-19 20:07:24 392
原创 L1-041 寻找250 (10分)-19物联网张春
对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。输入格式:输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。输出格式:在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。输入样例:888 666 123 -233 250 13 250 -222输出样例:5#include<stdio.h>#include<string.h>
2020-10-18 09:46:44 172
原创 出生年-19物联网张春
以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。”也就是说,直到2013年才达到“4个数字都不相同”的要求。本题请你根据要求,自动填充“我出生于y年,直到x岁才遇到n个数字都不相同的年份”这句话。输入格式:输入在一行中给出出生年份y和目标年份中不同数字的个数n,其中y在[1, 3000]之间,n可以是2、或3、或4。注意不足4位的年份要在前面补零,例如公元1年被认为是0001年,有2个不同的数字0和1。输出格式:根据输入,输出x和能达到要求的年份。数字间以1个
2020-10-18 08:42:16 375 1
原创 谁先倒-19物联网张春
划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就输了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。下面给出甲、乙两人的酒量(最多能喝多少杯不倒)和划拳记录,请你判断两个人谁先倒。输入格式:输入第一行先后给出甲、乙两人的酒量(不超过100的非负整数),以空格分隔。下一行给出一个正整数N(≤100),随后N行,每行给出一轮划拳的记录,格式为:甲喊 甲划 乙喊 乙划其中喊
2020-10-11 17:05:28 87
原创 Find them, Catch them - 并查集
The police office in Tadu City decides to say ends to the chaos, as launch actions to root up the TWO gangs in the city, Gang Dragon and Gang Snake. However, the police first needs to identify which gang a criminal belongs to. The present question is, give
2020-10-03 08:22:17 66 1
原创 欧拉回路——19物联网张春
欧拉回路是指不令笔离开纸面,可画过图中每条边仅一次,且可以回到起点的一条回路。现给定一个图,问是否存在欧拉回路?Input测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是节点数N ( 1 < N < 1000 )和边数M;随后的M行对应M条边,每行给出一对正整数,分别是该条边直接连通的两个节点的编号(节点从1到N编号)。当N为0时输入结束。Output每个测试用例的输出占一行,若欧拉回路存在则输出1,否则输出0。3 31 21 32 33 21 22
2020-09-26 10:36:38 146
原创 01背包——19物联网张春
有n个重量价值分别为Wi,vi的物品,从这些物品中挑选总重量不超过W的物品,求所有挑选方案中价值总和的最大值定义dp[i+1][j]=前i个物品中挑选出价值总和为j时总重量的最小值(不存在时就是一个充分大的数值INF),由于前0个物品中什么都挑选不了,所以dp[0][0]=0,dp[0][j]=INF.此外,前i个物品中挑选出价值总和为j时,一定有前i-1个物品中挑选价值总和为j的部分前i-1物品中挑选价值总和为j-v【i】的部分,然后再选中第i个物品void solve(){ for
2020-09-26 10:17:52 104
原创 并查集——19物联网张春
擒贼先擒王并查集其实就是有联系的将他们确定有共同的东西,为一组,无联系的,你懂的。#include<stdio.h>int f[1001]={0},n,m,sum=0;void init(){ int i; for(i=1;i<=n;i++) f[i]=i;//初始化,数组里面存的是自己数组下标的编号}//这是找爹的递归函数,不停的去找爹,直到找到祖宗为止//擒贼先擒王原则int getf(int v){ if(v==f[v])
2020-09-26 09:36:14 79
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人