![](https://img-blog.csdnimg.cn/20200416104808956.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法学习与刷题记录
文章平均质量分 86
想要更进一步的话,不刷题简直是不行了,该专栏中的主要内容就是我个人对算法的一些系统性和零碎的学习,以及一些刷题的记录。
云杉木屋
流浪在北方蔚蓝的路
展开
-
1073. 负二进制数相加
力扣刷题记录原创 2022-05-03 17:51:38 · 2062 阅读 · 3 评论 -
堆排序复习
摘要:本文时对堆排序进行的简单复习,因为已经基本上了解了堆排序的底层原理,因此本篇笔记更注重对堆排序代码的书写,本篇笔记将把堆排序分成两个部分:堆调整部分和堆排序部分。原创 2022-07-18 12:07:34 · 329 阅读 · 0 评论 -
SQL29 计算用户的平均次日留存率
一道牛客网困难的SQL题,由于基本不会便记了下来原创 2022-05-14 13:48:42 · 527 阅读 · 1 评论 -
栈和队列经典算法 —— 双栈实现队列与双队列实现栈
摘要:栈和队列是数据结构中经典且重要的两个成员,我们在学习完线性表之后接触的最早两个数据结构就是这两个,关于这两个数据结构的算法也是非常多且重要,最重要的是这两个算法 —— 两个栈实现一个队列和两个队列实现一个栈。...原创 2022-07-14 21:21:50 · 1942 阅读 · 0 评论 -
3. 无重复字符的最长子串
中等题,比较有研究价值原创 2022-05-11 15:53:25 · 136 阅读 · 0 评论 -
算法题:坑爹的黑店
今天刷到的一道题,加入了个人的理解。原创 2022-07-22 16:28:11 · 602 阅读 · 0 评论 -
104. 二叉树的最大深度
一道简单题,但是错几次,感觉很有价值,便记了下来。原创 2022-04-13 23:03:32 · 4269 阅读 · 0 评论 -
Java解题练习
今天老师给了我们一个OJ平台,让我们先做了一些简单题。好长时间没有打这种题了,特别是输入输出这块,好久没使用输入流进行控制台输入了,因此手特别生,放在这里保存参考。原创 2022-04-09 16:31:19 · 987 阅读 · 0 评论 -
数据结构考试题
数据结构考试题文章目录数据结构考试题1.请默写堆排序2. 请默写快速排序3.请默写归并排序4. 在一个给定的从1到100的整型数组中,如何快速找到缺失的数字?5.给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 最多出现两次 , 返回删除后数组的新长度6.分别用头插法和尾插法实现链表,并变量输出结果7.给定一个单链表,但不知该表的大小,现要求只遍历一次,找出位于单链表中间的值8.如何判断单链表中是否有环?9.怎样发现这个环的起始节点?10.怎样翻转链表?11.截取单链表中的后k个节原创 2022-03-22 18:58:34 · 623 阅读 · 0 评论 -
实验8-1-8 报数(20 分)
实验8-1-8报数(20分)报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<n)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。本题要求编写函数,给出每个人的退出顺序编号。函数接口定义:void CountOff( int n, int m, int out[] );其中n是初始人数;m是...原创 2018-08-12 15:41:09 · 5194 阅读 · 4 评论 -
暑假复习以及进阶-------递归函数
6-1使用递归函数计算1到n之和(5分)本题要求实现一个用递归计算1+2+3+…+n的和的简单函数。函数接口定义:int sum( int n );该函数对于传入的正整数n返回1+2+3+…+n的和;若n不是正整数则返回0。题目保证输入输出在长整型范围内。建议尝试写成递归函数。裁判测试程序样例:#include <stdio.h>int sum( int n );int m...原创 2018-07-13 12:21:35 · 549 阅读 · 0 评论 -
7-1 单向链表2(15 分)
7-1单向链表2(15分)编程实现:输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算: 输入一个正整数 n(0<n<=9)和一组(n个)整数,建立一个单向链表,再输入一个整数 x,将链表中最后一个与x相等的整数删除。输入输出示例:括号内为说明输入样例:输出样例:#由于是考试题目所以没办法直接复制#代码:#include <st...原创 2018-06-23 17:17:11 · 6611 阅读 · 3 评论 -
7-4 N阶楼梯上楼问题(15 分)
7-4N阶楼梯上楼问题(15分)N阶楼梯上楼问题:一次可以走两阶或一阶,问有多少种上楼方式。例如,当楼梯只有一阶时,只有一种方法;当楼梯有两阶时,可以每次跨一阶,跨两次,也可以每次跨两阶,跨一次,因此有两种方法。输入格式:输入包括一个整数N,(1<=N<46)。输出格式:输出当楼梯阶数是N时的上楼方式总数。输入样例1:3输出样例1:3输入样例2:4输出样例2:5#includ...原创 2018-03-31 21:53:41 · 4345 阅读 · 1 评论 -
6-2 函数实现字符串逆序(10 分)
本题要求实现一个字符串逆序的简单函数。函数接口定义:void f( char *p ); 函数f对p指向的字符串进行逆序操作。要求函数f中不能定义任何数组,不能调用任何字符串处理函数。裁判测试程序样例:本题要求实现一个字符串逆序的简单函数。函数接口定义:void f( char *p );函数f对p指向的字符串进行逆序操作。要求函数f中不能定义任何数组,不能调用任何字符串处理函数。裁判测试程序样原创 2017-12-24 14:50:07 · 45638 阅读 · 12 评论 -
7-2 判断上三角矩阵(15 分)
7-2 判断上三角矩阵(15 分)上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。输入格式:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。输出格式:每个矩阵的判断结果占一行。如果输入的矩阵是上三原创 2017-12-17 16:37:30 · 19877 阅读 · 1 评论 -
7-7 螺旋方阵(20 分)
7-7 螺旋方阵(20 分) 所谓“螺旋方阵”,是指对任意给定的N,将1到N×N的数字从左上角第1个格子开始,按顺时针螺旋方向顺序填入N×N的方阵里。本题要求构造这样的螺旋方阵。输入格式: 输入在一行中给出一个正整数N(<10)。 输出格式: 输出N×N的螺旋方阵。每行N个数字,每个数字占3位。输入样例:5 输出样例: 1 2 3 4 516 17 18 19 615 24原创 2017-12-16 20:05:30 · 14788 阅读 · 1 评论 -
判断上三角矩阵
7-2 判断上三角矩阵(15 分) 上三角矩阵指主对角线以下的元素都为0的矩阵;主对角线为从矩阵的左上角至右下角的连线。本题要求编写程序,判断一个给定的方阵是否上三角矩阵。输入格式:输入第一行给出一个正整数T,为待测矩阵的个数。接下来给出T个矩阵的信息:每个矩阵信息的第一行给出一个不超过10的正整数n。随后n行,每行给出n个整数,其间以空格分隔。输出格式:每个矩阵的判断结果占一行。如果输入的矩阵是原创 2017-12-16 15:36:49 · 12044 阅读 · 1 评论 -
求组合数详解
7-1求组合数(15分)本题要求编写程序,根据公式Cnm=m!(n−m)!n!算出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。输入格式:输入在一行中给出两个正整数m和n(m≤n),以空格分隔。输出格式:按照格式“result = 组合数计算结果”输出。题目保证结果在double类型范围内。输入样例:2 7输出样例:result = 21作者..原创 2020-10-24 21:20:53 · 492 阅读 · 0 评论 -
7-2 两个有序链表序列的交集 (20分)
7-2两个有序链表序列的交集(20分)已知两个非降序链表序列S1与S2,设计函数构造出S1与S2的交集新链表S3。输入格式:输入分两行,分别在每行给出由若干个正整数构成的非降序序列,用−1表示序列的结尾(−1不属于这个序列)。数字用空格间隔。输出格式:在一行中输出两个输入序列的交集序列,数字间用空格分开,结尾不能有多余空格;若新链表为空,输出NULL。输入样例:1 2 5 -12 4 5 8 10 -1输出样例:2 5作者DS课程组单位浙江大..原创 2020-10-24 21:13:43 · 1074 阅读 · 0 评论 -
7-1 两个有序链表序列的合并 (20分)
7-1两个有序链表序列的合并(20分)已知两个非降序链表序列S1与S2,设计函数构造出S1与S2合并后的新的非降序链表S3。输入格式:输入分两行,分别在每行给出由若干个正整数构成的非降序序列,用−1表示序列的结尾(−1不属于这个序列)。数字用空格间隔。输出格式:在一行中输出合并后新的非降序链表,数字间用空格分开,结尾不能有多余空格;若新链表为空,输出NULL。输入样例:1 3 5 -12 4 6 8 10 -1输出样例:1 2 3 4 5 6 8 10作..原创 2020-10-24 21:12:17 · 11693 阅读 · 2 评论 -
2020-10-24(链表习题 6-1学生成绩链表处理)
6-1学生成绩链表处理(20分)本题要求实现两个函数,一个将输入的学生成绩组织成单向链表;另一个将成绩低于某分数线的学生结点从链表中删除。函数接口定义:struct stud_node *createlist();struct stud_node *deletelist( struct stud_node *head, int min_score );函数createlist利用scanf从输入中获取学生的信息,将其组织成单向链表,并返回链表头指针。链表节点结构定义如下:st..原创 2020-10-24 21:10:29 · 1480 阅读 · 1 评论 -
java学习总结——通过题来学习Java(Java基础语法)
java学习总结——通过题来学习Java(Java基础语法篇之一)一.概述大二痛苦的前十个周后,我终于得到了喘息之机,有时间来回顾一下之前所学到的东西,总结一下之前的所得,尝试获取一下新的东西,同时也可能对大家有所帮助。我决定从总结我们做的每一道题来入手,深入的分析它们并且尝试进行改进,从而达到复习效果,同时希望对和我一样的刚入门的小白也有帮助。二.题目集分析1.是否偶数(10...原创 2019-05-05 16:59:45 · 5728 阅读 · 3 评论 -
BigDecimal再次应用——大整数相加
7-3jmu-Java-02基本语法-07-大整数相加(4分)有若干大整数,需要对其进行求和操作。输入格式每行输入一个字符串代表一个大整数,连续输入若干行,当某行字符为e或E时退出。输入样例:输出样例:分析:这里就又用到了BigDecimal类,BigDecimal类之前已经做过了一些介绍,这里就不再赘述。这个题目是大数相加,也就是说,当我们需要计算一个非...原创 2019-05-21 09:10:22 · 2444 阅读 · 0 评论 -
Java复习——字符串处理
7-4字符串处理(15分)编写一个程序,用户输入任意一个字符串,显示它的长度和第一个字符。输入格式:输入任意一个字符串。输出格式:显示它的长度和第一个字符,其间用,分隔。输入样例:abc 4567输出样例:8,a分析:这里初步考察了字符串的基本处理方法,而这些方法都是已经写到String类里的,所以我们直接使用即可,非常方便import ja...原创 2019-05-21 09:24:58 · 1385 阅读 · 0 评论 -
Java复习——基本输入
7-5jmu-java-01入门-基本输入(10分)对输入的若干行(每行以空格或者多个空格)数字字符串求和并输出。输入格式:每行包含两个数字字符串,中间以一个或者多个空格分隔。输出格式:输出两个数的和输入样例:1 12 3-100 100-100 -100 10 0输出样例:在这里给出相应的输出。例如:250-20...原创 2019-05-21 09:35:40 · 1855 阅读 · 0 评论 -
Java基础复习——浮点数的计算
7-1jmu-Java-02基本语法-05-浮点数计算(1分)输入两个浮点数,如 69.1 0.02 输出其和与乘积输入样例:69.10.021.992.01输出样例:69.121.3824.003.9999分析:这个题看似比较简单,但是这里使用了一个类,即定点数类,英文名为Decimal,在java中的全称为BigDecimal,这个类被打包为一...原创 2019-05-16 19:23:23 · 2919 阅读 · 3 评论 -
Java基础复习——枚举类
7-2jmu-Java-02基本语法-06-枚举(3分)定义一个枚举类型Grade来表示考试的4个等级,值包含A,B,C,D,E编写一个函数Grade getGrade(int score)将传递进来的score转化为枚举类型>=90 and <=100返回A, >=80 and <90 返回B, >=70 and <80 返回C, ...原创 2019-05-21 08:50:18 · 3983 阅读 · 1 评论 -
java复习——对于普通数组查重并且找到其对应的重复值
7-7JAVA-求整数序列中出现次数最多的数(10分)要求统计一个整型序列中出现次数最多的整数及其出现次数。输入格式:在一行中给出序列中整数个数N(0<N≤1000),依次给出N个整数,每个整数占一行。输出格式:在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。输入样例:在这里给出一组输入。例如:1032-...原创 2019-05-22 21:25:28 · 2779 阅读 · 0 评论 -
java复习——面向对象的基本知识
6-1设计一个矩形类Rectangle(10分)设计一个名为Rectangle的类表示矩形。这个类包括: 两个名为width和height的double型数据域,它们分别表示矩形的宽和高。width和height的默认值都为1. 一个无参构造方法。 一个为width和height指定值的矩形构造方法。 一个名为getArea()的方法返回这个矩形的面积。 一个名为getPerimeter...原创 2019-05-22 21:54:27 · 496 阅读 · 0 评论 -
6-2 sdust-Java-模拟主板、USB口、TypeC口、PS2口设备 (10 分)
6-2 sdust-Java-模拟主板、USB口、TypeC口、PS2口设备 (10 分) 使用Java编码设计实现模拟计算机硬件中的主板、USB口、TypeC口、PS2口及其组合方式。通常,计算机主板中提供了各种不同类型的对外接口,可以对接不同类型的设备。例如,可以接USB口的U盘、鼠标等,可以接口TypeC口的鼠标、键盘,可以接PS2口的键盘。要求:通过下面Main类中ma...原创 2019-03-21 17:38:22 · 1298 阅读 · 2 评论