- 博客(13)
- 收藏
- 关注
原创 《LeetCode零基础指南》(第十讲) 简单递归
文章目录前言1. 阶乘后的零2. 将数字变成0的操作次数3.完全二叉树的节点个数4. LCP 44.开幕式焰火5. 整数替换6. 二叉搜索数的范围和7. 剑指Offer 55 - I.二叉树的深度8. 二叉树的最大深度9. 翻转二叉树前言一入递归深似海,做完题顺带还复习了树的相关知识,一举双得。最后两题没什么时间做了,下次有时间在做吧1. 阶乘后的零172. 阶乘后的零题目给定一个整数 n ,返回 n! 结果中尾随零的数量。提示 n! = n * (n - 1) * (n - 2) *
2021-12-09 16:27:38 563 1
原创 《LeetCode零基础指南》(第九讲) 二级指针
二级指针二级指针返回函数模板1. 翻转图像2. 转置矩阵3.重塑矩阵4. 将一维数组转变成二维数组5. 二维网格迁移6. 图片平滑器7. 矩阵区域和7. 距离顺序排列矩阵单元格二级指针返回函数模板int **my_Malloc(int row, int col, int *returnSize, int **returnColumnSizes){ int i; int **ret = (int **)malloc(sizeof(int *) * row); //创建二级指针并初始化
2021-12-08 20:43:33 794
原创 《LeetCode零基础指南》(第八讲) 二维数组
二维数组1. 统计有序矩阵中的负数2. 矩阵对角线元素的和3. 最富有客户的资产总量4. 托普利茨矩阵5. 矩阵中的幸运数6. 二进制矩阵中的特殊位置7. 岛屿的周长1. 统计有序矩阵中的负数1351. 统计有序矩阵中的负数题目给你一个 m * n 的矩阵 grid,矩阵中的元素无论是按行还是按列,都以非递增顺序排列。请你统计并返回 grid 中 负数 的数目。思路分析双层循环遍历二维数组中的所有负数源码实现int countNegatives(int** grid,
2021-12-07 16:40:34 518
原创 《LeetCode零基础指南》(第七讲) 贪心
贪心1. 两个数对之间的最大乘积差2. 数组拆分3. 摆动排序 II4. 分发饼干5. 最少操作使数组递增6. 使数组唯一的最小增量7. 三角形的最大周长8. 救生艇9. 有效三角形的个数结语1. 两个数对之间的最大乘积差1913. 两个数对之间的最大乘积差题目两个数对 (a, b) 和 (c, d) 之间的 乘积差 定义为 (a * b) - (c * d) 。例如,(5, 6) 和 (2, 7) 之间的乘积差是 (5 * 6) - (2 * 7) = 16 。给你一个整数数组 nums
2021-12-06 10:34:34 761
原创 《LeetCode零基础指南》(第六讲) C排序API
排序1. 排序数组2. 多数元素3.存在重复元素4. 最大间距5. 按奇偶排序数组6. 最小时间差7. 三角形的最大周长8. 救生艇总结1. 排序数组912. 排序数组题目给你一个整数数组 nums,请你将该数组升序排列。题目分析直接使用c语言的内置函数qsort就可以完成该题源码实现/** * Note: The returned array must be malloced, assume caller calls free(). */int *cmp(in
2021-12-05 13:32:02 431
原创 《LeetCode零基础指南》(第五天) 指针
指针1. 重新排列数组2. 数组串联3. 基于排列构建的数组4. 一维数组的动态和5. 左旋转字符串6. IP地址无效化7. 替换空格8. 有多少小于当前数字的数字9. 打印从1到最大的n位数10.按既定顺序创建目标数组1. 重新排列数组1470. 重新排列数组题目给你一个数组 nums ,数组中有 2n 个元素,按 [x1,x2,...,xn,y1,y2,...,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,...,xn,yn] 格式重新排列,返回重排后的数组。来源:力扣
2021-12-04 19:26:31 355
原创 《LeetCode零基础指南》(第四讲) 一维数组
一维数组1. 搜索旋转排序数组2. 搜索旋转排序数组 II3. 4的幂4. 爬楼梯5. 斐波那契数6. 第N个泰波那契数7. 拿硬币8. 猜数字9. 差的绝对值为K的数对数目1. 搜索旋转排序数组33. 搜索旋转排序数组题目整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], num
2021-12-03 20:11:31 1026
原创 《Leetcode零基础指南》(第三讲)循环
1. 2的幂231. 2 的幂题目给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/power-of-two著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目分析判断是否为2的次幂,我们有两种思路:一种是对整数n取余,结果为1
2021-12-02 17:25:27 881
原创 《leetcode 零基础指南》第二天 函数
1.两整数之和371. 两整数之和给你两个整数 a 和 b ,不使用 运算符 + 和 - ,计算并返回两整数之和。思路分析参照题解: 我们可以利用位运算符实现两个数的加减。异或运算异或运算是相同为零,不同为1,观察规律可知,异或运算可以理解为无进位相加与运算使用异或运算得到无进位相加的结果后,那么我么怎么得到进位的值,这个时候我们就可以使用&运算,得到进位的1。移位在得到进位的结果后,我们需要向左移一位将进位的结果加到进位上,这个时候我们需要考虑到,移位
2021-12-01 17:47:45 316
转载 《C语言入门100例》(第五例)绝对值
解题报告给你一个整数数组 nums 和一个整数 k ,请你返回数对 (i, j) 的数目,满足 i < j 且 |nums[i] - nums[j]| == k 。|x| 的值定义为:如果 x >= 0 ,那么值为 x 。如果 x < 0 ,那么值为 -x示例 1:输入:nums = [1,2,2,1], k = 1输出:4解释:差的绝对值为 1 的数对为:[1,2,2,1][1,2,2,1][1,2,2,1][1,2,2,1]来源:力扣(LeetCode
2021-11-06 22:57:24 664
原创 《C语言入门100例》第三例 数值交换
《C语言入门100例》 (第三例)数值交换一、习题求解1、题目(来自leetcode)编写一个函数,不用临时变量,直接交换numbers = [a, b]中a与b的值。2、源码实现/** * Note: The returned array must be malloced, assume caller calls free(). */int* swapNumbers(int* numbers, int numbersSize, int* returnSize){ numbers
2021-11-04 23:52:42 591
原创 《C语言入门100例》第二例 数列求和
一、概念补充1.1递归定义当一个函数用它自己的定义时就称为是递归的。基本准则基准情形(base case), 递归中必须有某些基准情形,它们不用递归就能求解不断推进,对于那些需要递归求解的情形,递归调用必须能够朝着产生基准情形的方向推进注意事项C允许函数是递归的,但C提供的仅仅是遵循递归思想的一种企图不是所有的数学递归函数都能有效地由C的递归模拟来实现二、习题求解【例题1】求1+2+...+n,要求不能使用乘除法、for、while、if、else、s
2021-11-03 23:34:03 3698
原创 C语言100例 第一天习题练习
C语言中基本的输入与输出【例题1】输入两个正整数a和b,输出a+b的值,其中a, b ≤ 10000。#include<stdio.h>int main(){ int a, b; scanf("%d %d", &a, &b); printf("%d", a + b); return 0;}【例题2】输入将由一系列整数对 a 和 b 组成,用空格分隔,每行一对整数。对于每对输入整数 a 和 b,您应该在一行中
2021-11-02 23:38:32 800
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人