leetcode刷题
文章平均质量分 50
差不多程序员
java程序猿
展开
-
LeetCode-数学基础开篇
f(x)a>0且a≠1)【a: 底数(常量),x: 指数(变量)特征:指数函数在x轴没有交点,是光滑的曲线。原创 2024-06-05 23:39:16 · 190 阅读 · 0 评论 -
LeetCode-LCR 012. 寻找数组的中心下标【双指针】
一切尽在图中,可以把数组[1, 7, 3, 6, 5, 6]代入进去,最终返回下班应该是:3。原创 2024-10-07 17:08:20 · 336 阅读 · 0 评论 -
数学概念算法-打印100以内的素/质数
素数:只能被1和自己整除的数。原创 2024-10-07 15:51:17 · 102 阅读 · 0 评论 -
LeetCode125-验证回文串【双指针】
字符串转换处理是关键一定不要忽略大小写左右指针很灵活。原创 2024-07-05 15:12:40 · 241 阅读 · 0 评论 -
LeetCode415-字符串相加
常规的思路就可以解决先把计算做分解高位补0或者截取高位都可以处理,但是细想一下补0更方便。原创 2024-07-05 11:31:51 · 332 阅读 · 0 评论 -
LeetCode258-各位相加
2个单位数相加一定不会超过19,抓住这一点做循环的两位数相加即可。原创 2024-07-04 19:30:25 · 220 阅读 · 0 评论 -
LeetCode-无重复字符的最长子串
使用滑动窗口算法,left和right指针;right指针遭遇相同的值的时候,意味着left指针需要往右边移动一下,此时需要清空bucket,不用担心丢失数据,因为max早就记录了,只需要不断地移动两个指针比较接口最大值max要反复取下面的代码很关键,如果right指针遭遇了相同的字符串,如果;if (left!= 0) {原创 2024-07-02 20:13:43 · 252 阅读 · 0 评论 -
LeetCode26-删除有序数组中的重复项
快慢指针是优质解,起点位置要一致,频率可以有快慢。原创 2024-06-25 12:18:27 · 324 阅读 · 0 评论 -
LeetCode21-合并两个有序链表
优先推荐循环解法。原创 2024-06-24 16:41:53 · 305 阅读 · 0 评论 -
LeetCode206-反转链表
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。原创 2024-06-16 15:08:56 · 403 阅读 · 0 评论 -
LeetCode88-删除有序数组中的重复项
需要理解题意,数组本身是有序的,也就意味相同值肯定是挨着的需要理解一下为什么slow=2,是因为要从数组的第一个开始重新进行赋值。原创 2024-06-16 14:44:39 · 289 阅读 · 0 评论 -
LeetCode70-爬楼梯
其实和高中的数学归纳法有点像,对前面的几个情况进行穷举就会发现是一个斐波那契数列递归法写法简单,但是对栈内存的开销存在一定的损耗,推荐for循环。原创 2024-06-05 22:17:01 · 410 阅读 · 0 评论 -
LeetCode122-买卖股票的最佳时机
其实就是次日-前一日的差价>0,就可以卖了再买,一直循环即可。原创 2024-05-30 23:48:00 · 321 阅读 · 0 评论 -
LeetCode1-两数之合
用map去存两数相减另一半的index下标,只需要挨个存一遍,即可找到合适的。原创 2024-05-30 23:33:07 · 259 阅读 · 0 评论 -
LeetCode22-原地移除元素
如果使用单指针遍历数组,每遇到一个目标值就需要将后面所有元素向前移动一位。这样会产生大量的赋值操作,效率较低。双指针方法只需要在遇到目标值时,将当前位置的值替换为数组末尾的值,然后缩小右指针的范围。这样可以大大减少不必要的赋值操作。不要纠结绝对的有序,另外right的边界需要自己理解一下。原创 2024-05-30 14:33:46 · 433 阅读 · 0 评论 -
LeetCode88-合并两个有序数组
使用双指针优点是不用考虑数组的扩容和赋值;直接对两个数组从右往左进行指针移动,哪个大取哪个值放到尾部,同时移动对应数组的指针,较小值的数组指针不动;同时考虑两个数组的边界,移动到下标为-1时,说明已经结束,其他的值直接使用另外一个数组指针移动的值即可拿纸笔画一画更容易理解。原创 2024-05-30 14:30:59 · 250 阅读 · 0 评论