首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
leetcode详细题解
windliang
创建于2022-09-04
订阅专栏
包含多解法,网站:https://leetcode.wang
等 2 人订阅
共129篇文章
创建于2022-09-04
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
leetCode 13 Roman to Integer
和上一道题相反,将罗马数字转换成阿拉伯数字。 先来一种不优雅的,也就是我开始的想法。就是遍历字符串,然后转换就可以,但同时得考虑 IV,IX 那些特殊情况。 时间复杂度:O(n),n 是字符串的长度。 空间复杂度:O(1)。 下边分享一些优雅的。 把出现的特殊情况,提前减了就可…
leetcode 100 斩!回顾
leetcode 100 斩!从第 1 题开始,到现在也差不多快一年了,回顾纪念一下。 从大一就知道了 leetcode,但刷题总是三天打鱼,两天晒网,会发现刷过的题,隔一段时间再看还是需要很久才能再想起来,于是就萌发了刷一题总结一题的想法。 另一方面,leetcode 上的 …
LeetCode 22. Generate Parentheses
给一个数字 n ,返回所有合法的括号匹配,刚好和20题相反。 自己没想出来,全部参考 LeetCode 给出的 Solution。 列举所有的情况,每一位有左括号和右括号两种情况,总共 2n 位,所以总共 种情况。 时间复杂度:对每种情况判断是否合法需要 O(n),所以时间复杂…
LeetCode 31. Next Permutation
这道题的的难度我觉得理解题意就占了一半。题目的意思是给定一个数,然后将这些数字的位置重新排列,得到一个刚好比原数字大的一种排列。如果没有比原数字大的,就升序输出。 关键就是刚好是什么意思?比如说原数字是 A,然后将原数字的每位重新排列产生了 B C D E,然后把这 5 个数字…
LeetCode 32. Longest Valid Parentheses
给一个一堆括号的字符串,然后返回最长的合法的括号的长度。关于括号的问题,我们在 20 题和 22 题也讨论过。 列举所有的字符串,然后判断每个字符串是不是符合。当然这里可以做个优化就是,因为合法字符串一定是偶数个,所以可以只列举偶数长度的字符串。列举从 0 开始的,长度是 2、…
LeetCode 力扣 43. 字符串相乘
就是两个数相乘,输出结果,只不过数字很大很大,都是用 String 存储的。也就是传说中的大数相乘。 我们就模仿我们在纸上做乘法的过程写出一个算法。 个位乘个位,得出一个数,然后个位乘十位,全部乘完以后,就再用十位乘以各个位。然后百位乘以各个位,最后将每次得出的数相加。十位的结…
LeetCode 力扣 94. 二叉树的中序遍历
二叉树的中序遍历。 学二叉树的时候,必学的算法。用递归写简洁明了,就不多说了。 时间复杂度:O(n),遍历每个节点。 空间复杂度:O(h),压栈消耗,h 是二叉树的高度。 官方解法中还提供了两种解法,这里总结下。 利用栈,去模拟递归。递归压栈的过程,就是保存现场,就是保存当前的…
leetCode 11 Container With Most Water
每个数组代表一个高度,选两个任意的柱子往里边倒水,能最多倒多少水。 直接遍历任意两根柱子,求出能存水的大小,用一个变量保存最大的。 时间复杂度:O(n²)。 空间复杂度:O(1)。 我们理一下思路,大小是由长度和高度决定,如果选 0 到 8 就保证了长度最长,此时大小是 0 号…
LeetCode 力扣 135. 分发糖果
给 N 个小朋友分糖,每个人至少有一颗糖。并且有一个 rating 数组,如果小朋友的 rating比它旁边小朋友的 rating 大(不包括等于),那么他必须要比对应小朋友的糖多。问至少需要分配多少颗糖。 用 - 表示糖,举几个例子。 根据题目,首先每个小朋友会至少有一个糖。…