自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 (笔记自用)位运算总结+LeetCode例题:颠倒二进制位+位1的个数

在解题之前理解一下为什么需要位运算?它的本质是什么?力扣上不少位运算相关的题,并且很多题也会用到位运算的技巧。这又是为什么?位运算的由来在计算机里面,任何数据最终都是用数字来表示的(不管是我们平时用的软件,看的图片,视频,还是文字)。并且计算机运算单元只认识高低电位,转化成我们认识的逻辑,也就是 0 1。这就是导致计算机里面任何数据最终都是用二进制(0 1)来保存的数字。只是我们平时看到的图片、文字、软件都只从二进行数字转化而来的。

2024-09-21 17:19:04 768

原创 (笔记自用)LeetCode:快乐数

编写一个算法来判断一个数n是不是快乐数。如果n是快乐数就返回true;不是,则返回false。

2024-09-21 16:16:46 590

原创 C语言库uthash常用库函数以及LeetCode例题(多数元素)

你需要定义一个结构体,并在这个结构体中添加一个类型的字段,这个字段会被uthash库用来管理哈希表。int id;/* 用户ID *//* 用户名 *//* 使得结构体支持哈希表 */说明(1)关于结构体id是键(key),也可以是其他的数据结构,不同的数据结构对应hash操作可能不一样name是值(value),其类型根据实际情况定义hh是内部使用的hash处理句柄,在使用过程中,只需要在结构体中定义一个UT_hash_handle类型的变量即可,

2024-09-10 18:11:09 1112

原创 (笔记自用)leetcode:Excel表列名称

返回它在 Excel 表中相对应的列名称。

2024-08-23 23:56:46 190 1

原创 (笔记自用)LeetCode题目:相交链表

请注意相交节点的值不为 1,因为在链表 A 和链表 B 之中值为 1 的节点 (A 中第二个节点和 B 中第三个节点) 是不同的节点。换句话说,它们在内存中指向两个不同的位置,而链表 A 和链表 B 中值为 8 的节点 (A 中第三个节点,B 中第四个节点) 在内存中指向相同的位置。从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,6,1,8,4,5]。从各自的表头开始算起,链表 A 为 [1,9,1,2,4],链表 B 为 [3,2,4]。给你两个单链表的头节点。

2024-08-15 15:29:53 863

原创 (哈希表)LeetCode题目:有效的字母异位词

给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。若s和t中每个字符出现的次数都相同,则称s和t互为字母异位词。

2024-07-19 00:45:05 360

原创 C语言哈希表库函数uthash使用

你需要定义一个结构体,并在这个结构体中添加一个类型的字段,这个字段会被uthash库用来管理哈希表。int id;/* 用户ID *//* 用户名 *//* 使得结构体支持哈希表 */

2024-07-16 11:02:07 555

原创 (笔记自用)Leetcode题目:二叉树的遍历(递归+迭代)

给你二叉树的根节点root,返回它节点值的遍历。

2024-07-14 10:55:54 245

原创 (笔记自用)Leetcode题目:只出现一次的数字

给你一个整数数组nums,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。

2024-07-13 00:21:59 815

原创 (笔记自用)中序遍历二叉树(递归法\迭代算法)

从某个值开始,不断地由上一步的结果计算(或推断)出下一步的结果,就叫。2:迭代法,需要需要借助栈来实现操作先后操作。3:利用栈的操作原理,先进后出的原理。该题使用了栈来实现非递归的迭代算法.1:树的中序遍历口诀:左根右。空间复杂度: O(1)时间复杂度:O(n)

2024-07-12 23:43:08 171

原创 (笔记自用)leetcode:买卖股票的最佳时期

给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择买入这只股票,并选择在卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。5在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。0。

2024-07-11 19:14:45 390

原创 (笔记自用)leetCode:二叉树最小深度(递归和非递归)

给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。叶子节点是指没有子节点的节点。25[0, 105]

2024-06-12 11:16:20 206

原创 (笔记自用)leetcode:求x的平方根

给你一个非负整数x,计算并返回x的。由于返回类型是整数,结果只保留,小数部分将被不允许使用任何内置指数函数和算符,例如或者x ** 0.5。x = 42x = 828 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。

2024-06-01 11:26:46 338

原创 (笔记自用)leetcode题目:判断平衡二叉树

链接:https://leetcode.cn/problems/balanced-binary-tree/solutions/1248802/ping-heng-er-cha-shu-cyu-yan-xiang-jie-2-8m36/2:分别获取每个结点的左右子树的深度,根据左右子树深度差判断是否平衡。3:因为到达左子树底部后,每次对应的左子树都是放在递归调度中的。3:遍历全部结点,对所有结点的平衡性进行判断。1:自自底而上,判断每一个结点是否是平衡的。1:自顶而下,判断每一个结点是否是平衡的。

2024-05-31 12:07:46 542

原创 (笔记自用)leetcode题目:将有序数组转换为二叉搜索树

给你一个整数数组nums,其中元素已经按排列,请你将其转换为一棵平衡二叉搜索树。[0,-10,5,null,-3,null,9] 也将被视为正确答案:[3,1][1,null,3] 和 [3,1] 都是高度平衡二叉搜索树。

2024-05-31 10:56:50 410

原创 (笔记自用)leetcode动态规划进阶二题

给你一个整数数组cost,其中cost[i]是从楼梯第i个台阶向上爬需要支付的费用。一旦你支付此费用,即可选择向上爬一个或者两个台阶。你可以选择从下标为0或下标为1的台阶开始爬楼梯。请你计算并返回达到楼梯顶部的最低花费。,20]15你将从下标为 1 的台阶开始。- 支付 15 ,向上爬两个台阶,到达楼梯顶部。总花费为 15。cost = [,100,,1,,100,,100,6你将从下标为 0 的台阶开始。- 支付 1 ,向上爬两个台阶,到达下标为 2 的台阶。

2024-05-26 14:46:15 381

原创 (笔记自用)(leetcode)相同的树

给你两棵二叉树的根节点p和q,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。

2024-05-24 14:01:15 181 1

原创 特种二叉树的相关算法

【代码】特种二叉树的相关算法。

2024-05-24 10:36:03 120

原创 普通二叉树的相关算法

普通二叉树的相关算法。

2024-05-24 10:31:43 153

原创 (笔记自用)(动态规划求解)Leetcode题目:爬楼梯

假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?n = 22有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶n = 33有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶。

2024-05-21 22:04:53 263

原创 (笔记)(自用)Leetcode题:二进制求和

给你两个二进制字符串a和b,以二进制字符串的形式返回它们的和。示例 1:输入:a = "11", b = "1"输出:"100"示例 2:输入:a = "1010", b = "1011"输出:"10101"b'0''1'"0"1.a和b数组都是char类型数组,要计算需先将数据转化为int类型,并在最后再转化为char类型数组2.a数组和b数组长度不一,且都是逆序,这意味着逐项相加再项高位进位将很麻烦3.新生成的数组长度的如何确定。

2024-05-14 22:30:49 823 2

转载 (转载自用)leetcode题:搜索插入位置(二分查找法)

给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为。

2024-05-11 21:38:49 80

原创 leetcode刷题比较:两数相加

你可以假设除了数字 0 之外,这两个数都不会以 0 开头。的链表,表示两个非负的整数。它们每位数字都是按照。请你将两个数相加,并以相同形式返回一个表示和的链表。的方式存储的,并且每个节点只能存储。

2024-04-14 15:37:16 319 1

原创 习leetcode题目:回文数之所学:sprintf函数和内存分配

分配在内存空间和运行时间上会明显优于使用动态内存分配(char* str=(char*)malloc(sizeof(char)*100;),这是由于动态内存分配设计到堆的管理和分配算法等复杂操作,且需要手动释放内存空间。sprintf与printf函数类似,都使用格式化字符串来指定串的格式,在格式串内部使用一些以”%”开头的格式说明符来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个说明符,产生一个调用者想要的字符串。是一个回文整数,返回。

2024-04-07 12:01:39 222

原创 leetcode题目:删除有序数组中的重复项(C语言)

这本质是一道数学题目。,返回删除后数组的新长度。删除重复出现的元素,使每个元素。

2024-04-04 19:17:32 274

原创 数据结构链表(单链表、顺序表)的C语言代码以及实现

使用C语言实现数据结构中单链表和顺序表相关代码

2024-03-06 16:19:53 921 1

空空如也

空空如也

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

TA关注的人

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