- 博客(27)
- 收藏
- 关注
原创 leetcode 2938.区分白球与黑球
把1放右边,0放左边,只要把0全部放好那么1肯定也全部放好了。考虑将靠左的0放在靠左的位置,也就是第i个0要放到下标为i-1的位置,所以直接遍历并更新已就位的0的个数即可。时间复杂度 O(n)
2024-06-06 11:23:30
235
原创 leetcode 2981.找出出现至少三次的最长子特殊字符串(纯哈希表暴力)
【代码】leetcode 2981.找出出现至少三次的最长子特殊字符串(纯哈希表)
2024-05-29 20:15:10
298
原创 leetcode力扣 2225. 找出输掉零场或一场比赛的玩家
简单模拟就行,没有什么难度,主要是一些容器的使用,可以看看官方的增强for循环(本蒟蒻不会。
2024-05-22 13:22:56
176
原创 leetcode 41.缺失的第一个正数
同时我们也很容易想到排序,但排序最低是O(nlogn)的时间复杂度,那我们可以另辟蹊径。考虑到题目条件,可以想到:我们要找的数一定是[1,n+1]这个范围(n为数组长度)两种情况是自己调的,但套了两个循环实在不觉得还是O(n)的时间复杂度。如果没有限制,解题很简单,哈希表就可以解决,但那不能达到目的。同时里面增加一个判断避免死循环,如 nums = [1,1]这样做符合要求,O(n)的时间复杂度和O(1)的空间复杂度。那么我们只能循环直到不符合特殊情况,只需要把。但明显是不对的,考虑这个样例。
2024-05-07 19:06:56
143
原创 力扣每日一题5.3 0ms打败100%的人
直接写遍历找max和min并相加,减去max和min再求平均值,乘1.0升为double时间复杂度:O(n)O(n)O(n)空间复杂度:O(1)O(1)O(1)
2024-05-03 10:52:55
302
原创 C++类与对象练习 2
请从Shape类公有派生出圆类(Circle)和三角形类(Triangle),然后编制应用程序,建立圆类和三角形类对象,求圆和三角形的面积,并输出它们的有关数据。(5)分别完成派生类Circle和Triangle的成员函数area的定义,求圆和三角形面积,并屏幕输出圆半径、面积,三角形底边、高和面积。(3)定义派生类Triangle的私有数据成员w、h和s,分别表示三角形的底、高和面积,均为float型。(6)完成派生类Rectangle的成员函数area的定义,求矩形面积,并屏幕输出矩形的长、宽和面积。
2024-04-18 21:51:54
786
原创 C++ 类与对象练习 1
(2)定义类Square的公有构造函数Square (float d=0)的定义,当参数缺省时将数据成员r的值设置为0,否则设置为参数d的值。(4)完成Date类的公有成员函数void print()的类外定义,使其以“×年×月×日”的格式将Date对象的值输出到屏幕上。(5)完成类Square的公有成员函数void print()的类外定义,输出square对象的边长、周长和面积。(1)定义类Square的私有数据成员r、p和s,分别表示正方形的边长、周长和面积,它们都是float数据类型。
2024-04-18 21:49:12
352
原创 C++函数重载
在传统的C语言中,函数名必须是唯一的,程序中不允许出现同名的函数。在C++中是允许出现同名的函数,这种现象称为函数重载。程序功能:利用C++的函数重载,编写函数count,统计一组整数和一组实数中超过平均值的数据个数。在主函数中输入一组整数和一组实数,然后分别调用count函数统计超过平均值的数据个数,最后显示输出到屏幕。程序功能:利用C++的函数重载,编写函数Min,实现求一组整数和一组实数的最小值。程序功能:利用C++的函数重载,编写程序,求不同类型、不同个数的数的最小值。
2024-04-17 23:47:24
276
原创 C++简单语法练习
程序功能:从键盘输入图形的行数和列数,在屏幕上输出相应的图形。要求使用C++的标准输入流cin和标准输出流cout进行输入和输出。程序功能:输入长方形的长和宽,求长方形的周长和面积。要求使用C++的标准输入流cin和标准输出流cout进行输入和输出。程序功能:输入圆的半径,求圆的周长和面积。要求使用C++的标准输入流cin和标准输出流cout进行输入和输出。
2024-04-17 23:39:07
225
原创 2021年天梯赛L2-1 包装机
一种自动包装机的结构如图 1 所示。首先机器中有 N 条轨道,放置了一些物品。轨道下面有一个筐。当某条轨道的按钮被按下时,活塞向左推动,将轨道尽头的一件物品推落筐中。当 0 号按钮被按下时,机械手将抓取筐顶部的一件物品,放到流水线上。图 2 显示了顺序按下按钮 3、2、3、0、1、2、0 后包装机的状态。图1 自动包装机的结构图 2 顺序按下按钮 3、2、3、0、1、2、0 后包装机的状态。
2024-04-16 20:27:11
409
原创 C语言 文件处理 输入输出单词
程序功能:从键盘输入10个英文单词到二维字符数组a并保存到文本文件a.txt中(单词间以空格分隔),然后再从该文件中读出所有单词并显示到屏幕。
2024-04-15 21:59:19
223
1
原创 C语言链表和文件处理心得
1.处理链表时,在调试过程中,有时结点的next指针实例化时本身就是NULL,有时候又不是,不知道是什么原因。4.同样是fscanf()的问题,一开始调试时fscanf()读取失败返回值是-1,故判断条件是fscanf()!=-1,后面另一题出bug,发现fscanf()返回值也可以是。(当然文件内容得符合标准)5.在存入数据到文件之后,需要用rewind()函数将文件指针指向文件开头,否则可能无限循环输出最后的数据。6.可以先把dat格式文件改成txt格式,直接写入,再改回去,就不用专门写个读入程序。
2024-04-15 21:57:33
303
1
原创 C语音 文件处理 判断内容是否相同
程序功能:编写一个程序,比较两个文本文件a1.txt和a2.txt的内容是否相同,若相同则输出“YES”,否则输出“NO”,并输出两个文件内容首次不同的行号和字符位置。
2024-04-15 18:37:39
218
1
原创 C语言 文件处理 统计字符
定义 main()函数:打开 a.txt 文件,调用 countFile()函数统计文本文件的行数、大写字母个数、小写字母个数、数字字符个数及其他字符的个数,输出统计结果。程序功能:已知文件 a.txt 存储若干文本数据,编程统计 a.txt 文件的行数、大写字母个数、小写字母个数、数字字符个数及其他。定义 countFile()函数:统计文本文件的行数、大写字母个数、小写字母个数、数字字符个数及其他字符的个数。
2024-04-10 22:37:33
253
1
原创 C语言文件处理 统计成绩
程序功能:已知一个数据文件a.txt中保存了若干个学生的计算机等级考试成绩,包括学号、姓名和成绩。请编程读出显示文件内容并分类统计各等级人数,最后显示统计结果。成绩等级规则:大于等于90-A,大于等于80-B,大于等于70-C,大于等于60-D,60以下-E。
2024-04-10 22:34:42
303
1
原创 C语言合并两个已按升序排序链表
程序功能:输入若干个学生成绩(输入-1为结束标志),建立两个已按升序排序的单向链表,头指针分别为list1、list2,把两个链表拼成一个升序排序的新链表,并输出新链表信息。要求自定义函数,实现将两个链表拼成一个链表,并返回拼组后的新链表。
2024-04-10 22:30:59
168
1
原创 蓝桥杯 移动距离【第六届】【省赛】【B组】
思路:先算纵向距离,再算横向距离,通过行数的差的奇偶判断行序是否一致(升序降序)。一致的话取余相减即可,主要是不一致的情况,这部分笔者没有什么推理,凭借简单的小学数学逻辑代数硬推的。我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移动距离(不能斜线方向移动)X星球居民小区的楼房全是一样的,并且按矩阵样式排列。输入为3个整数w m n,空格分开,都在1到10000范围内。要求输出一个整数,表示m n 两楼间最短移动距离。w为排号宽度,m,n为待计算的楼号。峰值内存消耗 < 256M。
2024-04-08 22:15:34
172
原创 C语言单链表删除结点
程序功能:建立一个单向链表,头指针是list,链表中每个结点包含姓名、基本工资信息,编写del_list函数删除链表中等于某给定基本工资的所有结点。要求在主函数中先建立单向链表(注:当输入基本工资为0时,表示输入结束。),再输入一个给定基本工资,然后调用del_list函数删除链表中等于给定基本工资的所有结点,最后输出删除后的链表信息。
2024-04-08 21:58:46
247
原创 C语言单链表计算平均值
链表,头指针是list,链表中每个结点包含姓名、基本工资信息,编写count_list函数统计链表中超过平均基本工资的人数。要求在主函数中建立单向链表(注:当输入基本工资为0时,表示输入结束。),然后调用count_list函数统计链表中超过平均基本工资的人数,最后输出统计结果和平均基本工资。
2024-04-08 21:57:19
163
原创 C语言单链表查找最大值
基本工资的职工信息。要求在主函数中建立单向链表(注:当输入基本工资为0时,表示输入结束。),然后调用max_list函数查找链表中最高基本工资的职工信息,最后输出查找结果。建立一个单向链表,头指针是list,链表中每个结点包含姓名、基本工资信息,编写max_list函数查找链表中。
2024-04-08 21:55:57
313
原创 蓝桥杯 交换瓶子【第七届】【省赛】【B组】
接下来,使用另一个循环遍历数组a,检查每个元素是否已经在正确的位置上。如果不在正确的位置上,就进行交换操作,并更新数组a和b的值。首先,定义两个数组a和b,用于存储输入的整数和它们的索引。然后,通过循环读取输入的整数,并将它们存储在数组a和b中。输出数据为一行一个正整数,表示至少交换多少次,才能完成排序。第二行:N个正整数,用空格分开,表示瓶子目前的排列情况。对于这么简单的情况,显然,至少需要交换2次就可以复位。最后,输出计数器cnt的值,即需要交换的次数。有N个瓶子,编号 1 ~ N,放在架子上。
2024-04-07 11:33:08
273
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人