会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
星光夜
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
···
9
下一页
2021年12月5日
leetcode541_翻转字符串
摘要: 一、题目 二、分析 其实主要思路,仍然是先判断存在的整数周期,对其中前k个数字进行翻转,翻转可以参考之前的思路,进行双指针翻转,可以实现O(n)的复杂度。 另外一个方面,对于长度不满足2k的字符串,进行分别判断。 如果修改为迭代方式,那么需要考虑如何拆分字符串,保证最后能够返回完整的字符串。 另外一
阅读全文
posted @ 2021-12-05 20:40 星光夜
阅读(31)
评论(0)
推荐(0)
2021年12月4日
leetcode344_翻转字符串
摘要: 一、题目 二、代码 class Solution { public: void reverseString(vector<char>& s) { //长度 int string_len = s.size(); //这个也可以使用双指针翻转 int left = 0; int right = stri
阅读全文
posted @ 2021-12-04 16:33 星光夜
阅读(51)
评论(0)
推荐(0)
2021年11月26日
leetcode18_四数之和
摘要: 一、题目 二、算法 使用双指针 class Solution { public: vector<vector<int>> fourSum(vector<int>& nums, int target) { vector<vector<int>> result; sort(nums.begin(), n
阅读全文
posted @ 2021-11-26 23:46 星光夜
阅读(27)
评论(0)
推荐(0)
2021年11月24日
leetcode15_三数之和
摘要: 一、题目 二、分析 主要难点在于去重,而且补充元素去重,而是排列去重,这个用哈希来实现其实我感觉比较困难,后来看他们推荐的算法,还是采用的双指针逼近来完成这道题目。 算法流程如下 算法复杂度分析如下 三、代码 class Solution { public: vector<vector<int>>
阅读全文
posted @ 2021-11-24 11:03 星光夜
阅读(40)
评论(0)
推荐(0)
2021年11月23日
leetcode383_赎金信
摘要: 一、题目 二、题目分析 这个其实跟之前那道四数之和的题目很相似,我们只需要使用一个map来记录其中一个字符串的字母以及它出现的次数,然后对于另外字符串,去遍历就好了。 因为最理想的情况是,赎金信上面的字符串需要是杂志上的字符串的子集,所以这个时候我采取的方式是遍历杂志的字符串的数目,然后再对赎金信上
阅读全文
posted @ 2021-11-23 11:25 星光夜
阅读(32)
评论(0)
推荐(0)
2021年11月22日
leetcode_454四数相加II
摘要: 一、题目 二、算法分析 这里我们需要注意的是,是四个不同的数组,而且可能每个数组里面有重复的元素。但是我们需要返回的只有满足条件的数目。 按照别人的分析如下: 最好的方法是先使用一个Hashmap存储两个数组元素之和,并统计其出现的数目,然后遍历另外两个数组的元素之和。这样的算法的复杂度是最小的,只
阅读全文
posted @ 2021-11-22 14:16 星光夜
阅读(29)
评论(0)
推荐(0)
2021年11月21日
leetcode1_两数之和
摘要: 1、题目 2、代码分析 主要是参考代码。 这里我的思维陷入了误区,之间用了很多双指针前后逼近的方法,然后觉得排序之后也可以这么做,一般来说是可以的,但是麻烦在于这里需要排序之前的序号。 这里可能使用python的话,会简单一点,但是使用vector好像需要自己手动去找。 不管了,这里用map去查找比
阅读全文
posted @ 2021-11-21 18:03 星光夜
阅读(29)
评论(0)
推荐(0)
2021年11月20日
leetcode202_快乐数
摘要: 1、题目描述 2、分析 我本来是想着,如果是循环的话,就直接设置一个数字判断这种情况但是其实并没有将循环给判断出来。 总的思路来说,就利用数组计算一次,该数字所有位置上的数目平方和。 如果等于1则完成验算,如果运算次数超过三百则也停止,返回False。 代码如下: class Solution {
阅读全文
posted @ 2021-11-20 19:49 星光夜
阅读(27)
评论(0)
推荐(0)
2021年11月19日
leetcode349_两个数组的交集
摘要: 一、题目 二、题目分析 这个让我想起来之前有一道题目的算法分析,就是对于两个数组分别排序,然后使用不同的指针,如果不相等则不断从前向后移动,则可以一次遍历就解决了问题,但是可能排序是需要一定的时间的,但是总体来说时间复杂度还是O(m+n)的。 代码如下: class Solution { publi
阅读全文
posted @ 2021-11-19 00:02 星光夜
阅读(26)
评论(0)
推荐(0)
2021年11月14日
leetcode_有效的字母异位词
摘要: 一、题目 二、参考代码 使用两个遍历和一个数组,数组大小为26,用来记录字母出现的次数,这样的想法很好,我当时想的时候,以为所有小写字母数字为24,所以导致内存访问错误。 参考代码如下: class Solution { public: bool isAnagram(string s, string
阅读全文
posted @ 2021-11-14 20:39 星光夜
阅读(30)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
···
9
下一页
公告