自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode第21天删除链表第n个节点

这个题最简单的办法就是先遍历一边,求得长度,这样第二遍就可以去到要删去的节点了。 最方便的办法是用栈,先装进去,按顺序取出即可。这里在head前面接一个空节点会比较好操作。

2021-11-10 23:39:58 239 1

原创 leetcode第20天四数之和

和之前三数之和的思想一样,拿来用。

2021-11-09 19:32:34 98

原创 leetcode第19天电话号码

想了很多,还是递归方便打印

2021-10-20 10:06:30 103

原创 Leetcode第18天最接近三数之和

和上一题太像了,好好记住排序双指针便利

2021-10-19 10:45:02 72

原创 leetcode第17天三数之和

自己写的,很笨,数据量大会超时,还是得双指针,少一层查找。

2021-10-18 00:05:02 51

原创 leetcode第16天,最长公共前缀

扫描什么的方法就不提了,字典排序真的好使

2021-10-15 18:01:20 51

原创 Leetcode第15天,罗马数字转整数

倒序便利,依次相加,遇到小的变减号

2021-10-13 20:15:45 55

原创 leetcode第14天罗马数字

很简单的,贪心就好了 这个pair的循环简化了代码,值得学习。是的,我一开始就是一个一个判断的????

2021-10-12 19:40:43 73

原创 Leetcode第12,13天正则表达式

写了两天,结果感人 class Solution { public: bool isMatch(string s, string p) { bool ans=false; int temp=0; for(int i=0; i<=s.size(); i++) { if(is.size()&&tempp.size()) return true; else if(temp>=p.size()) return false; if(p[temp+1]’*’&&temp..

2021-10-11 20:35:31 98

原创 Leetcode第11天二分查找优化

写代码的思维还是没有培养起来,看到题自己写的还是笨笨的,亟需改进。 二分查找可以显著降低时间复杂度,但是我没有想到,还是不够敏感将其转化为查找问题。

2021-10-10 00:54:02 59

原创 leetcode第10天双指针优化

我看到这个确实没什么头绪,只想全遍历,但是看了看最后的范围提示,必定运行超时了,所以还是借助了答案。 在一开始,我们把两个指针放在头尾。需要明白一件事,就是指针如何移动。我们需要移动键值更小的那个指针。假设我们移动了键值较大的那个指针,如果下一个位置的键值变大了,那么就面积来看,高不变,宽减小,面积减小;如果下一个位置的键值变小了,那么就面积来看,高变小,宽减小,面积减小。 ...

2021-10-09 00:16:02 41

原创 leetcode第九天回文数

#include<cmath> classSolution{ public: boolisPalindrome(intx){ if(x<0)returnfalse; inttemp=x,power=0; intleft,right; while(temp>9){ temp=temp/10; power++; ...

2021-10-07 19:20:36 55

原创 leetcode第八天string转int

很简单的题,细心一点考虑全各种情况。 也是看到有大佬写的: 深感遗憾正则表达式当时没搞明白了。

2021-10-06 19:49:03 125

原创 leetcode第七天整数反转

题目很简单,借此复习一下:C语言中int的取值范围为:-2147483648 ~ 2147483647

2021-10-05 20:57:02 75

原创 leetcode第六天z字形变

没有什么难度,看得懂题意就很容易做。 这是四行的例子画出的图,这个弄明白了就可以开始码了。可以2n-2看作一个循环,取余数即可,再把相加为2n的合并就好了。

2021-10-04 19:57:40 106

原创 leetcode第五天最长回文子串

首先,这个题比较容易想到的解法就是便利字符串,把每个字符都当作回文串的中心向两边拓展。(需要注意奇偶)我比较关注的是官方给出的另外两种算法。 动态规划:本质上是维护一个状态转移矩阵,满足的条件: 单字符是回文串,两个相同字符的字符串也是回文串,一个回文串左右两个字符相同的话,合并起来也是回文串。这样我们就可以计算得出这样一个上三角的状态转移矩阵。 这个算法和上一种的算法时间复杂度是一样的o(n2),空间复杂度更高也是o...

2021-10-03 21:17:16 43

原创 leetcode第四天寻找两个有序数组的中位数

第一眼看到这个题,首先想到的就是中位数那就挨个找呗。虽然时间复杂度是o((m+n)/2),但我们先把最简单的写出来。 当我们要考虑题目最后的要求:时间复杂度为o(log(m+n))。我的想法首先就是二分的思想。 ...

2021-10-03 01:02:56 45

原创 leetcode第三天最长无重复子串

我们很容易想到最简单的办法就是挨个字符作为子串的头寻找最长子串。如下: 这样的时间复杂度是o(n2),双重循环。我们还可以通过头尾指针来寻找最长子串,通过维护一个记录数组避免了嵌套的循环。 还有一点要注意的是,如果用c来写,要记得强制转换(我也是好久没写c,才去复习才想起来的>_<) ...

2021-10-01 20:42:14 28

原创 leetcode第二天两数相加

这种类型的题就是考察对链表的基本操作了,要注意的点是进位以及链表长度。

2021-09-30 15:54:53 82

原创 Leetcode第一天(两数之和)

非计算机转业学生打算进入互联网行业(有一定基础),计划从今天开始刷leetcode,因此想在csdn写日记用以激励自己,同时也可以与很多好兄弟们交流。 第一眼看到这个题目,最先返回到脑子里的想法就是双层循环暴力出结果即可。 接下来要优化算法的时间复杂度,首先可以想到的是排序,然后从两边头尾指针往中间搜索 这里搜索的复杂度是o(n),时间复杂度主要出在sort上,为o(nlogn)。 最后,时间复杂...

2021-09-29 16:46:08 38

空空如也

空空如也

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

TA关注的人

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