leetcode
文章平均质量分 57
Sophia2333333331
这个作者很懒,什么都没留下…
展开
-
代码随想录之额外题目
要求logn 那就明显是二分查找算法//要求logn 那就二分查找 int begin = 0;//如果没找到就是-1 res [ 1 ] = - 1;//注意要相等 int mid =(begin + end) / 2;//找到了之后开始向两边扩展搜索 j --;k ++;return res;} else {//如果没找到 就不会更新 返回初始值-1 } }原创 2023-05-09 21:29:49 · 840 阅读 · 0 评论 -
代码随想录之字符串(力扣题号)KMP算法
字符串,KMP算法原创 2023-03-13 17:25:09 · 180 阅读 · 0 评论 -
代码随想录之哈希表(力扣题号)
哈希表原创 2023-03-08 13:17:34 · 392 阅读 · 0 评论 -
代码随想录之链表(力扣题号)
链表汇总原创 2023-03-03 19:29:51 · 52 阅读 · 0 评论 -
代码随想录之数组(力扣题号)
数组回顾原创 2023-03-01 15:06:37 · 385 阅读 · 0 评论 -
贪心算法合集
贪心算法原创 2023-01-17 16:52:57 · 10767 阅读 · 3 评论 -
双指针合集
双指针合集原创 2023-01-15 16:01:52 · 483 阅读 · 0 评论 -
字符串合集
字符串原创 2023-01-11 18:24:21 · 167 阅读 · 0 评论 -
动态规划合集
动态规划原创 2023-01-09 16:23:54 · 1723 阅读 · 0 评论 -
57岛屿数量-61全排列 最长递增路径
回溯 dfs 全排列原创 2022-12-26 21:05:52 · 448 阅读 · 0 评论 -
54三数之和55 56有无重复元素的全排列
回溯原创 2022-12-24 17:15:59 · 369 阅读 · 0 评论 -
51寻找数组中出现次数超一半的数
哈希原创 2022-12-20 21:37:42 · 439 阅读 · 0 评论 -
48数据流中的中位数 49表达式 50两数之和
堆栈和哈希原创 2022-12-19 23:56:08 · 280 阅读 · 0 评论 -
46最小的k个数 47寻找第k大
寻找第K大和优先队列原创 2022-12-17 20:11:49 · 74 阅读 · 0 评论 -
44 有效括号序列 45滑动窗口的最大值
栈和双端队列原创 2022-12-17 00:42:33 · 608 阅读 · 0 评论 -
40重建二叉树41输出二叉树的右视图
重建二叉树原创 2022-12-14 21:13:52 · 86 阅读 · 0 评论 -
38寻找二叉树的最近公共祖先39序列化和反序列化
二叉树原创 2022-12-06 17:57:09 · 399 阅读 · 0 评论 -
二叉树-31-37对称二叉树
二叉树原创 2022-12-04 11:22:00 · 243 阅读 · 0 评论 -
7判断环的入口结点8输出倒数第k个
牛客刷题链表原创 2022-11-22 15:11:46 · 136 阅读 · 0 评论 -
二叉树-28最大深度29二叉树路径和
二叉树原创 2022-08-18 23:05:43 · 130 阅读 · 0 评论 -
2627二叉树的层次遍历和之字顺序打印
二叉树原创 2022-08-14 19:06:18 · 340 阅读 · 0 评论 -
23-25.二叉树前序遍历、中序遍历和后续遍历
二叉树原创 2022-08-13 12:23:30 · 341 阅读 · 0 评论 -
二分法-21旋转数组的最小数字22比较版本号
二分 字符串原创 2022-08-13 00:54:39 · 91 阅读 · 0 评论 -
分治-19寻找峰值,20逆序对
归并原创 2022-08-12 00:10:06 · 162 阅读 · 0 评论 -
二分查找 1718一维和二维数组的查找
二分查找原创 2022-08-11 00:40:15 · 170 阅读 · 0 评论 -
链表 15 16删除有序链表中重复的元素
链表原创 2022-08-10 13:33:54 · 967 阅读 · 0 评论 -
链表13 判断回文结构14奇偶重排
链表原创 2022-08-09 15:27:43 · 147 阅读 · 0 评论 -
链表10-12寻找公共节点、链表相加、链表排序
链表原创 2022-08-08 11:26:19 · 290 阅读 · 0 评论 -
链表-06判断有环
链表原创 2022-08-04 00:31:56 · 71 阅读 · 0 评论 -
链表-09删除倒数第n个节点
链表原创 2022-08-04 00:29:48 · 77 阅读 · 0 评论 -
链表-0405合并有序链表
合并有序链表原创 2022-08-01 15:07:35 · 174 阅读 · 0 评论 -
链表-03k个一组反转
链表原创 2022-07-30 19:22:03 · 152 阅读 · 0 评论 -
day22-统计字符
49 字母异位词分组利用哈希表,每个字母进行排序class Solution {public: vector<vector<string>> groupAnagrams(vector<string>& strs) { unordered_map<string, vector<string>> mp; for(string str : strs){ string key =原创 2021-05-09 17:05:34 · 95 阅读 · 0 评论 -
day21-字符统计
383赎金信还是用哈希表来存对应字母的出现个数,先遍历一遍magazine,记录总共有多少,再遍历ransom,对应相减,如果不够扣就返回false时间复杂度O(N),空间复杂度O(1),因为最多只有26个小写字母class Solution {public: bool canConstruct(string ransomNote, string magazine) { vector<int> count(27); for(char c: mag原创 2021-05-08 11:36:21 · 111 阅读 · 0 评论 -
day20-字符统计
原来已经十几天没有更新了,真是一时拖延一时爽,一直拖延一直爽387字符串中的第一个唯一字符第一反应就是构建哈希表,一次遍历构建map,另一次遍历找出次数为1的返回时间复杂度是O(N),空间复杂度是可能出现的字符种类个数,在这里就是26class Solution {public: int firstUniqChar(string s) { unordered_map<int,int> count; for(int i = 0; i < s原创 2021-05-07 15:41:31 · 85 阅读 · 0 评论 -
day19-字符串反转2
557反转字符串3这题和上一题也一样,只要判断好left和right就可以了时间复杂度O(N),空间复杂度O(1)class Solution {public: string reverseWords(string s) { for(int left = 0; left < s.length();){ while(s[left] == ' ') left ++; int right; for(r原创 2021-04-26 20:42:16 · 174 阅读 · 0 评论 -
day18-字符串翻转
344翻转字符串class Solution {public: void reverseString(vector<char>& s) { int left = 0; int right = s.size() - 1; while(left < s.size() / 2){ swap(s[left], s[right]); left++; right原创 2021-04-26 09:55:34 · 99 阅读 · 0 评论 -
day17-字符串统计
434字符串中的单词统计由于题目指出单词之间只会通过空格隔开,因此就很容易判断,只要当前一个字符是空格而当前字符不是空格就可以统计加一。时间复杂度O(N),空间复杂度O(1)class Solution {public: int countSegments(string s) { int count = 0; for(int i = 0; i < s.length(); i++){ if((i == 0 || s[i - 1]原创 2021-04-25 20:59:26 · 102 阅读 · 0 评论 -
day16字符串
14最长公共前缀简单题就是用最直接简单的想法,一个个去遍历和比较,把所有的单词都放在一起,纵向比较第i列的字母是否相同,时间复杂度O(MN)是无法避免的,空间复杂度O(1)class Solution {public: string longestCommonPrefix(vector<string>& strs) { if(strs.size() == 0) return ""; int length = strs[0].length()原创 2021-04-24 21:53:47 · 72 阅读 · 0 评论 -
day15--字符串
520检测大写字母这题是简单题,分情况讨论一下就好了,遍历一遍单词,时间复杂度O(N),空间复杂度O(1)class Solution {public: bool detectCapitalUse(string word) { int n = word.length(); if(n == 1) return true; if(word[0] > 'Z'){ for(int i = 1; i < n; i++)原创 2021-04-20 22:47:50 · 83 阅读 · 0 评论