
LeetCode
leetcode
程序员萌芽
夜半荧屏映月华,
指尖飞舞写天涯。
代码千行凝智慧,
bug除尽见朝霞。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【LeetCode】高频 SQL 50题 题解
SQL入门原创 2025-05-07 15:46:24 · 1009 阅读 · 0 评论 -
C++实现求解24点游戏
使用回溯遍历四个数字的每一种组合,具体来说,每次从数组中选取两个数字以加减乘除四种方式得到一个新的数字,这样数组的规模会减少,从4个变成3个,再递归下去变成2个,最后变成一个的时候判断是否等于24。注意样例 [3,3,8,8] 也是可以通过3-8/3得到1/3,然后用8➗1/3得到24,由于无法精确存储小数,所以和24比较相等时允许存在误差。判断四个数字能否通过加减乘除得到24点。注意除法的存在需要用浮点数存储。原创 2025-03-22 23:48:54 · 282 阅读 · 0 评论 -
C++实现大整数相乘
有两种方法,一是借助大整数相加的方法,两个数相乘其实就相当于一个数反复加自己,加的次数就是另一个数的值,但这样太耗时,所以模拟小学的竖式乘法,将一个数的每一位乘以另一个数得到一个字符串,然后将这些字符串相加起来,注意每往后一位就往字符串后面补个0,这样的方法比较清晰易懂。还有一种方法代码比较简洁,同样是模拟手工乘法的过程,逐位相乘并处理进位,但是不需要额外计算大整数相加,两个数相乘的结果的位数必定是m+n或者m+n-1。大整数意味着无法用基本数据类型装下,只能用字符串装下,然后手工模拟计算过程。原创 2025-03-21 15:52:14 · 278 阅读 · 0 评论 -
C++实现大整数相加
从两个字符串的最后一位开始两两相加,记录进位,每次均有sum=a+b+sum,此后sum/10保留为进位,逐渐往前处理直到两个字符串均处理完并且进位也用完。大整数意味着无法用基本数据类型装下,只能用字符串装下,然后手工模拟计算过程。原创 2025-03-21 15:21:55 · 218 阅读 · 0 评论 -
【Leetcode热题100】C++ 题解
leetcode热题100详细题解原创 2024-11-14 16:48:25 · 864 阅读 · 0 评论 -
【LeetCode】使括号有效的最少添加
括号离不开栈,栈可以消除有效的括号,先用栈将左括号装起来,遇到右括号并且栈非空就弹栈,如果遇到右括号栈空就计数,说明需要插入左括号,完事之后栈里面的元素就都是左括号,都计数,因为都需要加上右括号。对于一个只有()组合的括号字符串,如果想要这个字符串是有效的括号对,找出最少需要插入多少个括号。原创 2024-06-04 16:07:43 · 422 阅读 · 0 评论 -
【LeetCode】【0-1背包】目标和
又因为x+y=sum,两式相加,可以求得x=(target+sum)/2,即题目变成能不能在元素里面找到一个组合的和为x,即0-1背包问题,基本同。要在数组中通过加减元素得到目标和,记加的元素和为x,减的元素和为y,即x-y=target。注意如果target+sum不是偶数或者target的绝对值大于sum都是没有的。dp[i]变成存在子集和为i的个数。原创 2024-04-17 23:24:03 · 396 阅读 · 0 评论 -
【leetcode】大数相加
计算两个大数的和,从末尾开始逐个字符相加,记录进位。原创 2024-04-09 23:46:24 · 1042 阅读 · 0 评论 -
【leetcode】可被三整除的最大和
对于一个和来说,它和三整除就只有三个结果,0,1,2,可以在遍历数组中记录和模3三种结果的最大值。题目的意思是要找数组元素的最大和,这个和必须能被三整除。原创 2024-04-09 21:30:08 · 309 阅读 · 0 评论 -
【leetcode】用队列实现栈
用两个队列可以实现栈,只需要在在元素入栈的时候,让新来的元素始终放在队首即可,可以先用一个空队列装这个元素,然后将另一个队列装的元素在搬到这个队列,下一次元素入栈的时候又用这个空的队列装新元素,把另一个队列装的元素搬过来,这样新来的元素始终会在队首。如此说来,其实一个队列也可以实现,新来的元素先放队尾,然后把前面的元素都从队首pop出来从队尾push进去,这样也可以让新来的元素始终在队首。原创 2024-04-09 19:29:23 · 384 阅读 · 0 评论 -
【leetcode】用栈实现队列
栈虽是先进后出,用一个栈可以将序列倒序,那么再用一个栈就可以正序了。先用一个栈存储进来的,要输出的时候再用一个栈装一下。原创 2024-04-09 19:12:59 · 332 阅读 · 0 评论 -
有效的括号 力扣 栈应用
栈的简单应用原创 2022-08-16 11:38:01 · 217 阅读 · 0 评论 -
所有子集 剑指 Offer II 079
子集,终于把子集搞懂了原创 2022-08-16 09:43:55 · 238 阅读 · 0 评论 -
电话号码的字母组合 C++ 回溯递归
回溯递归原创 2022-08-12 11:34:59 · 582 阅读 · 0 评论 -
杨辉三角 C++
vectorNB原创 2022-08-11 17:28:22 · 321 阅读 · 0 评论 -
删除有序数组中的重复项 C++
我直接……原创 2022-08-11 17:07:41 · 381 阅读 · 0 评论 -
只出现一次的数字 III C++
打打打原创 2022-08-16 23:00:00 · 135 阅读 · 0 评论 -
只出现一次的数字 II C++
我爱C++原创 2022-08-13 12:31:01 · 300 阅读 · 0 评论 -
哈希表应用:只出现一次的数字
哈希表^O^原创 2022-08-10 09:41:47 · 208 阅读 · 0 评论 -
只出现一次的数字 LeetCode C++
我……,居然支持切片!!!原创 2022-08-09 18:19:50 · 381 阅读 · 1 评论 -
最长公共前缀 C++
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串。最长公共前缀首先是公共的,这意味大家都有,那么我们可以先拿一个字符串出来,然后从头比较到尾,具体就是这样:习惯拿第一个来操作,让第一个字符串和后面的字符串比较,一个字符一个字符地比较,碰到不相同的说明大家相同的字符已经没了,立马结束,如果都相同,那么说明最长的公共就是自己。......原创 2022-06-23 17:28:41 · 242 阅读 · 0 评论 -
【LeetCode】螺旋矩阵 II
以人的视角去看,就是从外圈到内圈填数,从1填到n*n。其实就是a[i][j]=num++;然后难度就是怎么确定i和j的变化。原创 2022-04-17 11:40:31 · 1051 阅读 · 2 评论