自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 二叉树展开为链表

链接:https://leetcode.cn/problems/flatten-binary-tree-to-linked-list。展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null。前序遍历->根左右规则如是二叉树为空,则返回空操作,否则先访问根结点,然后前序遍历左子树,最后前序遍历右子树。输出:[1,null,2,null,3,null,4,null,5,null,6]输入:root = [1,2,5,3,4,null,6]

2022-08-19 18:13:19 123 1

原创 从前序与中序遍历序列构造二叉树

链接:https://leetcode.cn/problems/construct-binary-tree-from-preorder-and-inorder-traversal。给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。输入: preorder = [3,9,20,15,7], inorder = [9,3,15,20,7]输出: [3,9,20,null,null,15,7]

2022-08-19 18:07:04 256

原创 二叉树的最大深度

链接:https://leetcode.cn/problems/maximum-depth-of-binary-tree。给定二叉树 [3,9,20,null,null,15,7],二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。通过遍历二叉树得到深度然后取最大值可以得到二叉树的深度。通过次数818,043提交次数1,060,872。说明: 叶子节点是指没有子节点的节点。给定一个二叉树,找出其最大深度。来源:力扣(LeetCode)请问您在哪类招聘中遇到此题?返回它的最大深度 3。

2022-08-19 17:58:46 129

原创 对称二叉树

前序遍历->根左右规则如是二叉树为空,则返回空操作,否则先访问根结点,然后前序遍历左子树,最后前序遍历右子树。中序遍历->左根右规则如是二叉树为空,则返回空操作,然后中序遍历左子树,访问根结点,最后中序遍历右子树。后续遍历->左右根规则如是二叉树为空,则返回空操作,然后后序遍历左子树,后序遍历右子树,最后访问根结点,输入:root = [1,2,2,null,3,null,3]输入:root = [1,2,2,3,4,4,3]进阶:你可以运用递归和迭代两种方法解决这个问题吗?来源:力扣(LeetCode)

2022-08-19 17:09:42 1168

原创 二叉树的中序遍历

前序遍历->根左右:规则如是二叉树为空,则返回空操作,否则先访问根结点,然后前序遍历左子树,最后前序遍历右子树。二叉树的遍历方法:二叉树的遍历是指从根结点出发,按照某种次序依次访问二叉树中的所有结点,使得每个结点都被访问。中序遍历->左根右:规则如是二叉树为空,则返回空操作,然后中序遍历左子树,访问根结点,最后中序遍历右子树。后续遍历->左右根:规则如是二叉树为空,则返回空操作,然后后序遍历左子树,后序遍历右子树,最后访问根结点,输入:root = [1,null,2,3]输出:[1,3,2]...

2022-08-05 19:25:10 1478

原创 【无标题】跳跃游戏c

解题思路:如果没有0这个坑的话,那么是可以一直走下去的,直到到达最后的值,所以需要用if语句来判断是否陷入0这个坑,如果陷入这个0,则返回false,而k = max(k, i + nums[i]);列如3,2,1,0,4,当i小于四时都可以得到d[i]=1.但是当i为4时,则前面的最多到达i为3的位置,而i等于的3的位置为0,则满足不了等于或大于i,所以d[i]为0,如果4后面还有其他数,则也为0,因为大于不了i为4,自然也大于不了i为5为6了。输入:nums = [2,3,1,1,4]...

2022-08-05 18:36:36 73

原创 颜色分类c

解题思路首先我们可以先分为三个区间,第一个区间等于0,下一个等于1,最后一个等于2,然后进行遍历看在那个区间,具体思路为,如果,等于0,则将等于0的数组内容与第一个值交换,然后将ptr++,如果等于1,则和上面方法一样,最后全部循环完以后,等于2的就达到2的区间里,可以实现颜色的区分,这个是单指针的方法。这个的解题思路和上面差不多,唯一的区别就是,两个指针分别是在头,和尾,如果等于2就和尾的交换并且减一,等于0则和头的交换,再加一,就可以完成颜色转换。输入nums=[2,0,2,1,1,0]...

2022-07-27 11:25:06 189

原创 爬楼梯c语言

滚动数组就是,当n为3时,c为a加b为2,将b给a,将第二个台阶的方法给b,然后再次循环,i为3,c为第一和第二个方法相加为3,下一个循环就将第二个台阶的方法给a,第三个台阶的方法给b,就这样一直滚动,这就是用滚动的大致思路。是有一种方法,2个有2种方法,3个有3种,4个有5种,所以可得当有n个台阶时,是前两种台阶的方法相加。这是动态规划方法,大体思路差不多,d【3】=d【2】+d【1】,d【4】=d【3】+d【2】,运用循环来达到求台阶。1.1阶+1阶+1阶。2.1阶+2阶。......

2022-07-26 11:56:19 3591 1

原创 只出现一次的数字

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4通过次数732,117提交次数1,013,65来源:力扣(LeetCode)链接:https://leetcode.cn/problems/single-number著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2022-07-20 20:17:26 46

原创 组数总和c

列如,2,3,6,7,第一层选择2,然后第2层也可以选2,但是当第2层循环到3时,第3层不能等于2,是为了避免重复,,然后如果总和等于目标值,则将该值保存到*returnSize这里,然后*returnSize加一,如果小于目标值则再次调用函数,到第三层,如果还是小于,则到第四层,直到大于或等于,等于就报存,然后回到原来路径,继续遍历,,和上述一样,直到全部遍历完毕。输出[[2,2,2,2],[2,3,3],[3,5]]7也是一个候选,7=7。输出[[2,2,3],[7]]...

2022-07-20 18:27:20 62

原创 括号的生成。

许多复杂的,规模较大的问题都可以使用回溯法,有“通用解题方法”的美称。首先我们要知道第一个必须是左括号,只有是左括号才可以算为有效,第一个为左括号后,然后才进行排列,下一个为左括号,或者右括号,这样进行排列,在左括号放入后,左括号加一,接下来可以为左括号,然后左括号再加一,也可以为右括号,右括号加一,并且right...

2022-07-15 13:28:38 49

原创 有效的括号

给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。 示例 1:输入:s = "()"输出:true示例 2:输入:s = "()[]{}"输出:true示例 3:输入:s = "(]"输出:false示例 4:输入:s = "([)]"输出:false示例 5:输入:s = "{[]}"输出:true 来源:力扣(LeetCode)链接:https://

2022-07-14 11:44:55 38

原创 在排序数组中查找元素的第一个和最后一个位置

给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例 2:输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]示例 3:输入:nums = [], target

2022-07-08 12:25:00 612

原创 最大子数组和

给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [5,4,-1,7,8]输出:23 提示:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/ma

2022-07-07 11:29:13 418

原创 最小路径c

给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例 1:输入:grid = [[1,3,1],[1,5,1],[4,2,1]]输出:7解释:因为路径 1→3→1→1→1 的总和最小。示例 2: 输入:grid = [[1,2,3],[4,5,6]]输出:12 提示:m == grid.lengthn == grid[i].length1 ...

2022-07-02 11:51:17 310

原创 不同路径c

一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:输入:m = 3, n = 7输出:28示例 2: 输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向下 -> 向下2. 向下 -> 向下 -> 向右3. 向下 -> 向右 -> 向下示例 3:输入:m

2022-07-01 11:33:09 253

原创 三数之和c

给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。示例 1:输入:nums = [-1,0,1,2,-1,-4]输出:[[-1,-1,2],[-1,0,1]]示例 2:输入:nums = []输出:[]示例 3:输入:nums = [0]输出:[]来源:力扣(LeetCode)链接:https://leetcode.cn/problems/3s

2022-06-25 18:57:30 291

原创 【无标题】盛最多水的容器

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。示例 2:输入:height = [1,1]输出

2022-06-24 11:40:09 57

原创 【无标题】

第一题设计一个猜数字游戏,即系统随机出一个0-100的整数,用户输入数字,提示输出大还是小,超过4次则为用户失败,游戏结束后询问用户是否下一轮。给两个相同大小的n*n二维矩阵,计算矩阵相加相减相乘,并且计算出每个矩阵中的鞍点,也就是行为最大值,列为最小值最大值,列为最小值。...

2022-06-22 08:51:47 51

原创 删除链表的第n个节点

删除链表的第n个节点

2022-06-19 18:32:18 867

原创 无重复字符的最长字串

无重复字符的最长字串

2022-06-13 18:54:07 226

原创 两数相加c

两数相加

2022-06-13 18:23:53 46

原创 P1036 选数

选数c语言

2022-06-06 19:31:04 159

原创 P1007 独木桥

独木桥问题(c语言)

2022-06-06 15:23:08 62

原创 桶排问题c语言

利用c语言解决桶排问题

2022-06-04 21:51:21 68

原创 【无标题】

'''#函数的定义def printinfo(): print("_______________") print(" 人生苦短,我选phyon ") print("_______________") #函数的调用printinfo()''''''#带参函数def add2Num(a,b): c=a+b print(c)add2Num(500,21)''''''#带返回值的函数def add2Num(a,b): return.

2022-04-24 22:45:14 28

原创 【无标题】

#include<stdio.h>int main(){ int x,b,c,d,i,j,max=0; int a[1000]; scanf("%d",&x); for(i=1;i<=x;i++) { scanf("%d",&a[i]); } for(int j=1;j<=x;j++) { b=1; while(a[j+1]==a[j]+1) { b=b+1; j=j+1; } if(b>ma.

2022-04-17 22:23:24 139

原创 【无标题】

#include<stdio.h>int main(){ int n,x,i,count,t; count=0; scanf("%d %d",&n,&x); for(i=1;i<=n;i++) { int j=i; while(j>0) { t=j%10; if(t==x) count++; j=j/10; } } printf("%d",count); }

2022-04-14 00:04:09 31

原创 【无标题】

tup1=()#创建一个新元组print(type(tup1))tup2=(50,)#单个值要加个逗号print(type(tup2))''''''tup1=('abc','def',2000,2020)print(tup1[0])print(tup1[-1])#访问最后一个元素print(tup1[1:5])#左闭右开'''''' #增 连接''''''tup1=(12,15,66)tup2=("abc","acd")tup=tup1+tup2print(tup).

2022-04-08 00:12:02 26

原创 【无标题】

列表'''a=[1,2]b=[3,4]a.append(b)#将列表当作一个元素,加入到a列表中print(a)a.extend(b)#将列表中的元素,逐一追加到a中print(a)''''''a=[0,1,2]a.insert(1,3)#第一个变量表示下表,第二个表示元素,将3插入a中1下标的位置print(a)''''''movieName=["加勒比海盗","骇客帝国","第一滴血","指环王","速度与激情"]print("-----删除前,电影列表的数据-----".

2022-04-05 00:02:15 173

原创 【无标题】

age=18print("我的名字是%s,我的国籍是%s"%("小张","中国"))print("我的年纪是:%d岁"%age)print("aaa","bbb","ccc")print("www","baidu","com",sep=".")#sep表示分割,sep=”.“表示用。分割print("hello",end="")#end=""什么都没有则连接下一个print("world",end="\t")#end=”\t“表示输出后空一段print("python",end="\n")#.

2022-04-02 19:34:38 177

原创 判断考试成绩

a=input("输入您的成绩:")c=int(a)if c >=90 and c <=100: print("本次考试为A")elif c>=80 and c<90: print("本次考试等级为B")elif c >= 70 and c < 80: print("本次考试等级为C")elif c >= 60 and c < 70: print("本次考试等级为D")else: print("本次考试等.

2022-03-30 23:37:29 209

原创 【无标题】

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<windows.h>#define High 20#define Width 30//全局变量 int moveDirection;int food_x,food_y;int canvas[High][Width]={0};//二维数组存储游戏画布中对应的元素 0为空格 -1为边框#,1为蛇头@,大于一的正数蛇身* vo.

2022-03-28 00:00:11 34

原创 玩家控制小蛇移动

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<windows.h>#define High 20#define Width 30//全局变量 int moveDirection;//小蛇移动方向上下左右分别用1,2,3,4表示0为空格,-1为边框#,1为蛇头@,大于1为蛇身* int canvas[High][Width]={0};void gotoxy(int x,.

2022-03-25 00:12:28 709

原创 小蛇的移动

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<windows.h>#define High 20#define Width 30//全局变量 int moveDirection;//小蛇上下移动的方向用1 2 3 4来表示 int canvas[High][Width]={0};//二维数组存储游戏画布中对应的元素 void gotoxy(int x,int y)//.

2022-03-22 22:21:31 53

原创 构造小蛇

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<windows.h>#define High 20#define Width 30 //游戏尺寸画面int canvas[High][Width]={0};//二维数组存储游戏画布中对应的元素 0为空格 -1为边框# 1为蛇头 @大于一的正数为蛇身* void gotoxy(int x,int y){ HANDLE ha.

2022-03-19 22:16:38 57

原创 直角的杨辉三角

#include<stdio.h>int main(){int i,j,a[10][10];for(i=0;i<10;i++)//进行循环{a[i][0]=1;//第一列为1a[i][i]=1;//最外层的斜边为1for(i=2;i<10;i++)//外层循环{for(j=1;j<i;j++)//内层循环{a[i][j]=a[i-1][j-1]+a[i][j-1];//进行第一列和最外层斜边内的运算}}for(i=0;i<10;i++)//外层循环.

2022-03-17 21:50:32 201

空空如也

空空如也

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

TA关注的人

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