- 博客(37)
- 收藏
- 关注
原创 Leetcode刷题之轮转数组
个数据进行逆置,这里需要注意的是最后一个前n-k个元素的下标,应该是。输入: nums = [1,2,3,4,5,6,7], k = 3。输入:nums = [-1,-100,3,99], k = 2。向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]向右轮转 1 步: [99,-1,-100,3]向右轮转 2 步: [3,99,-1,-100]输出: [5,6,7,1,2,3,4]
2024-04-12 15:12:39 389 1
原创 Leetcode刷题之移除元素(C语言版)
例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。然后当src等于val时src++,dst不动,当src不等于val时,将src的值赋给dst,然后让src++,dst++,这样循环往复,便可以将val移除,需要注意的是循环的条件为。解释:函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。输入:nums = [0,1,2,2,3,0,4,2], val = 2。元素的顺序可以改变。
2024-04-12 15:10:52 272
原创 Leetcode刷题之消失的数字(C语言版)
本道题目我们可以采用一种非常巧妙的方法解决,那么就是利用等差数列的公式。我们可以先用等差数列的公式求出包括“消失的数字”的和,接着我们利用循环减去数组的每一项就可以的到消失的那一项。输入:[9,6,4,2,3,5,7,0,1]值得我们关注的是在这里我们将首项看作是1。注意:本题相对书上原题稍作改动。输入:[3,0,1]
2024-04-11 16:09:58 270 1
原创 C语言练习——3
利用算数的方法,先将a+b的值赋给a,然后利用a的新值减去原来的b,便得到了交换后的b的值,同理可得到交换后a的值,但是这种方法由于int的范围不能够处理较大的数。从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第一个矩阵中的元素。KiKi有一个矩阵,他想知道转置后的矩阵(将矩阵的行列互换得到的新矩阵称为转置矩阵),请编程帮他解答。第一行包含两个整数n和m,表示一个矩阵包含n行m列,用空格分隔。输入NxM矩阵,矩阵元素均为整数,计算其中大于零的元素之和。
2023-01-19 17:08:44 931 5
原创 C语言练习——2
输入描述:输入包括一个字符。输出描述:输出该字符是字母(YES)或不是(NO)。示例1输入:H复制输出:YES复制示例2输入:9复制输出:NO这种写法是错误的,
2022-09-13 17:12:36 311 7
原创 C语言练习——1
输出包括一行,如果M可以被5整除就输出YES,否则输出NO(结果大小写敏感)。第二行为printf(“Hello world!”)调用后的返回值。输入包括一个整数M(1≤M≤100,000)。输入包含一个整数n (0 ≤ n ≤ 109)多组输入,每行输入包括一个整数表示的智商。输出一个整数,即小乐乐到达楼上需要的时间。针对每行输入,输出“Genius”。第一行为“Hello world!写一个函数求两个整数的较大值。
2022-09-13 12:18:03 327
原创 C语言——扫雷游戏最全讲解
扫雷》是一款大众类的益智小游戏,于1992年发行。游戏目标是在最短的时间内根据点击格子出现的数字找出所有非雷格子,同时避免踩雷,踩到一个雷即全盘皆输。
2022-09-09 18:49:09 5041 18
原创 C语言——数组详解
这时数组并不能够成功创建,原因是:数组创建,在C99标准之前, [] 中要给一个常量才可以,不能使用变量。C语言本身是不做数组下标的越界检查,编译器也不一定报错,但是编译器不报错,并不意味着程序就是正确的,所以数组的下标如果小于0,或者大于n-1,就是数组越界访问了,超出了数组合法空间的访问。数组的下规定是从0开始的,如果数组有n个元素,最后一个元素的下标就是n-1。数组的初始化是指,在创建数组的同时给数组的内容一些合理初始值(初始化)。组的概念,数组的大小可以使用变量指定,但是数组不能初始化。
2022-09-08 17:04:43 540 7
原创 C语言——初级三子棋游戏的实现
我们知道一个游戏程序的实现,我们必须先要打印一个游戏菜单来供游戏用户选择进入游戏,还是选择退出游戏,我们可以通过if—else语句或者switch语句来实现该功能模块的实现,在此,我通过if—else语句来为大家演示。在对棋盘进行初始化之后,我们需要对其进行一定的装饰,使其变得更加美观,使其更加具有一定的观赏性,所以我们可以通过自定义一个display_board函数来实现。,同时我们需要判断电脑下棋的位置是否被用户所占用,我们通过自定义computer_move函数来实现该功能。来代表三子棋游戏的列数。
2022-09-05 09:28:05 1072 14
原创 C语言— —函数的递归与迭代问题
递(递推)归(回归)程序调用自身的编程技巧称为递归( recursion)。递归做为一种算法在程序设计语言中广泛应用。一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略:只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量递归的主要思考方式在于:把大事化小eg:main函数自己调用自己的递归main();return 0;}
2022-09-02 17:02:11 1054 15
原创 初识C语言——操作符详解
原因:static修饰局部变量的时候,改变了局部变量的存储类型,普通的局部变量是存储在栈区,被static修饰的变量是存储在静态区的,存储在静态区的变量,出了作用域不会消毁,依然存在,所以静态变量的生命周期就是程序的生命周期。程序结束的时候,静态变量才回收空间。首先strlen是一个库函数,strlen是求字符串长度的,关注的字符串中是否有\0,统计\0之前出现的字符个数,而sizeof是一个操作符,sizeof只关注占据了多大的内存空间,不关注内存中存放的数据本身,且sizeof的返回值的单位是字节。..
2022-08-14 14:19:10 320 4
原创 初识C语言——常量、转义字符、函数、数组的相关概念
注意:上面例子上的 pai 被称为 const 修饰的常变量, const 修饰的常变量在C语言中只是在语法层面限制了 变量 pai 不能直接被改变,但是 pai 本质上还是一个变量的,所以叫常变量。C语言中的常量分为以下以下几种: 字面常量、 const 修饰的常变量、 #define 定义的标识符常量、 枚举常量。C语言规定:数组的每个元素都有一个下标,下标是从0开始的。数组可以通过下标来访问的。3、 #define 定义的标识符常量。函数的特点:简化代码,代码复用。二、转义字符的相关概念。...
2022-08-13 13:13:40 420 6
原创 初识C语言——变量的相关概念
一、定义变量的方法二、变量的命名方法三、变量的分类四、变量的作用域及生命周期五、定义变量的数据类型的大小计算方法一、定义变量的方法二、变量的命名方法1.只能由字母(包括大写和小写)、数字和下划线( _ )组成。2.不能以数字开头。3.长度不能超过63个字符。4.变量名中区分大小写的。5.变量名不能使用关键字。三、变量的分类变量分为全局变量和局部变量。......
2022-08-12 17:20:36 399 7
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人