自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 收藏
  • 关注

原创 qt5半成品飞机大战小游戏

最近在学Qt,心血来潮做了个飞机大战小游戏,由于一些资源比较难找,就做了个半成品。缺少功能:游戏开始界面,敌机释放子弹,与人物飞机的物体碰撞,游戏音效(没有资源)。目前已做功能:人物飞机的自由移动,子弹的发射,子弹与敌机的物体碰撞,碰撞特效。已有资源和代码放在一下压缩包,有需要的自取。

2024-11-18 23:18:46 256

原创 汇总区间计算

的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于。列表中的每个区间范围。

2024-09-19 21:12:56 218

原创 岛屿的周长

岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100。计算这个岛屿的周长。方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。它的周长是上面图片中的 16 个黄色的边。

2024-09-18 21:32:48 216

原创 将一句英文颠倒输出

输入:s = “i am from beijing"输出:”beijing form am i“

2024-09-13 22:41:23 244

原创 判断是否在同一个键盘行

同一行的字母打印出来的单词。

2024-09-12 21:11:10 921

原创 计算赎金信

【代码】计算赎金信。

2024-09-11 22:11:45 201

原创 计算987654321*123456789

【代码】计算987654321*123456789。

2024-09-11 22:04:49 232

原创 计算2的100次方

【代码】计算2的100次方。

2024-09-11 22:02:17 289

原创 数字的补数

5 的二进制表示为 101(没有前导零位),其补数为 010。所以你需要输出 2。1 的二进制表示为 1(没有前导零位),其补数为 0。所以你需要输出 0。)后,再转换为十进制表示,可以得到这个整数的补数。对整数的二进制表示取反(

2024-09-10 22:34:19 220

原创 重复的子字符串

可由子串 "abc" 重复四次构成。(或子串 "abcabc" 重复两次构成。,检查是否可以通过由它的一个子串重复多次构成。可由子串 "ab" 重复两次构成。给定一个非空的字符串。

2024-09-09 21:55:24 252

原创 两个数组的交集

请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。

2024-08-21 20:28:53 274

原创 比特位的计算

思路:先将两个基本的数1和0进行判断,再从这基础上进行奇数偶数判断。,计算其二进制表示中 1。

2024-08-18 06:00:00 309

原创 3的幂计算

给定一个整数,写一个函数来判断它是否是 3 的幂次方。是 3 的幂次方需满足:存在整数。方法2:找到范围中3的最大幂次方。

2024-08-17 22:12:18 183

原创 Nim游戏

假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为。1. 移除1颗石头。你的朋友移走了3块石头,包括最后一块。2. 移除2个石子。你的朋友移走2块石头,包括最后一块。3.你移走3颗石子。你的朋友移走了最后一块石头。如上图所示,先后手赢的局,规律即能不能被4整除。在所有结果中,你的朋友是赢家。你和你的朋友,两个人一起玩。

2024-08-16 22:50:13 297

原创 丑数的计算

1 没有质因数,因此它的全部质因数是 {2, 3, 5} 的空集。习惯上将其视作第一个丑数。14 不是丑数,因为它包含了另外一个质因数 7。思路:将输入的数对2,3,5,进行轮询取余。

2024-08-16 22:17:27 254

原创 数的个位相加

38 --> 3 + 8 --> 11 11 --> 1 + 1 --> 2 由于 2 是一位数,所以返回 2。,反复将各个位上的数字相加,直到结果为一位数。思路2:不利用循环,数学计算。

2024-08-15 23:04:19 239

原创 有效字的字母异位词

中每个字符出现的次数都相同,则称。,编写一个函数来判断。思路:哈希表的映射。

2024-08-14 22:32:31 212

原创 判断是否是2的幂

请你判断该整数是否是 2 的幂次方。

2024-08-13 21:14:54 235

原创 存在重复元素

如果数组中每个元素互不相同,返回。如果任一值在数组中出现。,判断数组中是否存在两个。

2024-08-13 21:10:34 199

原创 同构字符串

每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。中的字符可以按某种映射关系替换得到。,那么这两个字符串是同构的。,判断它们是否是同构的。

2024-08-13 10:12:45 164

原创 快乐数求解

思路:将n除10取余求每一位的平方,再将他们加在一起,结果如果是1或者是7,则返回true,如果不是,将sum的值赋给n,继续循环。(还有其他便捷解题思路,查看力扣网题库202.快乐数)编写一个算法来判断一个数。

2024-08-12 22:12:25 304

原创 位1的个数

编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中设置位的个数(也被称为。思路:将n的每一位与1相与,与1得1,与0得0,然后将每次的相加。中,共有 30 个设置位。中,共有 1 个设置位。

2024-08-09 21:54:41 195

原创 颠倒二进制位

思路:输入无符号十进制数,将其改为二进制数,并将其反转输出为十进制数。利用位运算,将输入数的最低位取出,放入新定义的无符号数中,n再右移一位,反复循环32次。因此返回 3221225471 其二进制表示形式为。因此返回 964176192,其二进制表示形式为。颠倒给定的 32 位无符号整数的二进制位。表示无符号整数 4294967293,

2024-08-09 21:28:29 314

原创 Excel表列名称

思路:定义两个全局变量数组,将输入的数对26进行整除和取余操作,从低到高存在数组1中,数组2反向装入数组1的内容。,返回它在 Excel 表中相对应的列名称。

2024-08-07 22:17:18 427

原创 验证回文串

思路:先判断是不是字母数字字符,并将大写字母改为小写。从数组首位开始与末尾一一比对,相等则返回true,不等则返回false。如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个。"amanaplanacanalpanama" 是回文串。在移除非字母数字字符之后,s 是一个空字符串 ""。字母和数字都属于字母数字字符。由于空字符串正着反着读都一样,所以是回文串。"raceacar" 不是回文串。

2024-08-07 22:11:04 159

原创 只出现一次的数字

除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。使用函数:int singleNumber(int* nums, int numsSize) {}思路:可能最近在学单片机,写多了位操作,导致想到的比较快,就冒出了异或的想法。

2024-08-06 22:37:12 211

原创 买股票的最佳时机

在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。思路:从后往前依次递减,用倒数第二个减去倒数第一个,并将值存在tep中,与max比较,如果比max大,则max = tep。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回。在这种情况下, 没有交易完成, 所以最大利润为 0。

2024-08-06 22:22:00 174

原创 爬n阶楼梯问题

思路:斐波那契数列的转换,1,1,2,3,5,8,13.......你有多少种不同的方法可以爬到楼顶呢?1. 1 阶 + 1 阶 + 1 阶。有两种方法可以爬到楼顶。1. 1 阶 + 1 阶。有三种方法可以爬到楼顶。2. 1 阶 + 2 阶。3. 2 阶 + 1 阶。

2024-08-03 03:19:47 212

原创 X的算术平方根

思路1:暴力解题,从0开始循环判断,当前的数是否大于(i*i)并且是否小于(i+1)*(i+1)。由于返回类型是整数,结果只保留。

2024-08-02 23:51:11 225

原创 二进制字符串求和

2.定义一个进位cnt,从每一个字符串末尾相比再加进位,逢2进1,cnt = 1。3.如果某一个字符串比较完了,再判断较长字符数组每一位与进位。思路:1.定义一个指针,开辟一个空间,比最长的字符串长度长二。4.再判断第一位第一位是否为0。5.将得到的新字符数组返回。6.free掉开辟的空间。,以二进制字符串的形式返回它们的和。给你两个二进制字符串。

2024-08-01 22:36:40 233

原创 最后一个单词最大长度

思路:从字符串最后往前计数,当最后一个字符不是空格时,开始计数,直到遇到空格停止。,由若干单词组成,单词前后用一些空格字符隔开。是指仅由字母组成、不包含任何空格字符的最大子字符串。例如:输入s = “hello world”

2024-07-31 11:36:41 138

原创 判断输入的括号是不是闭合的

判断字符串是否有效。

2024-07-30 23:14:03 238

原创 初学嵌入式STM32F429IGT6

8. 选择左边的Core Generator,并如下图勾选设置,最后点击右上角GENERATE CODE。10.成功运行进入Keil5,将SET改为RESET(不改的话下载程序后,四个小灯刚开始就是亮着的)5.选择左边的GPIO,并将刚刚选择的四个引脚的GPIO output level都设置为High。7.选择上方Project Manager,输入一个文件名,并将其IDE设置为MOK-ARM。12.如果没有错误,打开FlyMcu软件,勾选以下内容(记得正确选择.hex文件)1.Keil5编程软件。

2024-07-30 22:27:29 739

原创 C语言通讯录项目

目前还存在的问题:当输入两个或两个以上的联系人时,删除某一个,再添加一个新联系人时,会将前一个联系人姓名覆盖。再新加一个,就会出现名字被覆盖的问题。contacts.c文件。contacts.h文件。

2024-07-29 01:33:40 139

原创 今日学习笔记

2.结构体内存:因为内存对齐缘故,所定义的特征变量不同,所占大小也不同。当使用const函数是,结构体的输出变为:printf("特征变量对应的数据类型",结构体名称->特征变量);1.栈区:一种先进后出的存储结构, 函数的参数,函数的返回值都是栈区变量。4.堆区:一个比较大的内存容器(比栈区大,约为4G大小),需要我们手动的申请和释放内存。4.结构体的取值:printf("特征变量对应的数据类型",结构体名称.特征变量);1.结构体的定义:用来描述复杂对象,如:书,人等具有多个特征的变量。

2024-07-28 01:05:47 447

原创 输出字符串中最长无重复字符串长度

思路:定义一个ASCII码大小的数组n,找到字符串第一个字符所在的ASCII码在数组n中所在位置(例如'a'的大小为97,则定位到n[97]),将其定位为开始位,并将数组在当前位置的值致0。再找出字符串第二个字符所在的ASCII码在数组n中所在位置,如果与第一个字符不相等,开始位+1,并将数组在当前位置的值致0。如果与第一个字符相等,则开始位在这一位开始。输出:最长无重复字符串为 = "abcd" 最长无重复字符串长度 = 4。输出字符串中最长无重复字符串长度,并输出最长无重复字符串。

2024-07-26 22:59:05 368

原创 将两个有序数组合并

函数:void mergeNum(int * array1,int size1,int * array2,int size2,int * array3,int size3)例如:int num1[] = {2, 5, 7, 7, 11};2.再用较小元素数组中第二个元素,与较大元素相比,再将较小元素输入给第三个数组;输出:nums3[] = {2, 3, 5, 5, 7, 7, 8, 11};1.将数组1中的第一个元素和数组2中第一个元素相比,将较小的输入给第三个数组;

2024-07-26 22:33:46 217

原创 今日学习笔记

将其代入上式中可得: *(*(nums2 + 1) + 1) = nums2[1][1]由此便得出一个新的等式,即:*(*(nums +X) + Y) = nums[X][Y]以上可以推导出: *(nums2[1] + 1) = nums2[1][1]nums2[0][0]的地址 = nums2[0]的地址,nums2[1][0]的地址 = nums2[1]的地址,nums2[2][0]的地址 = nums2[2]的地址。(1)二级指针的定义:(指针的作用指向一块地址)int **pptr = NULL;

2024-07-25 00:48:44 690

原创 将一个简单的二位数组转置

给定数组 int nums2[3][3] = {{1,2,3},{4,5,6},{7,8,9}};输出数组 nums2[3][3] = {{1,4,7},{2,5,8},{3,6,9}};思路1.直接反向输出nums将行列互换。思路2.交换的行总是比列小。

2024-07-24 23:23:01 89

原创 根据指定的值删除函数数组的元素,并返回数组新长度

首先,这是我一开始的代码:当时想着 *newLength = len,那我直接*newLength++,然后返回值就ok了,但是运行了一下,发现不对,结果为0。*p++对p所指向的空间地址进行+1(int *类型+4字节,char *类型+1字节等等),空间地址改变,空间地址所对应的内容也会改变。(*newLength)++ 和 *newLength++ 并不相同,前者是所指向内容+1,后者是地址+1。(*p)++只对p所指向的空间地址的值进行+1,而地址不会改变。再说说,我在过程中所遇到的问题。

2024-07-23 22:31:53 312

qt5半成品飞机大战小游戏

代码即其资源文件

2024-11-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除