leetcode
weixin_42024142
这个作者很懒,什么都没留下…
展开
-
540. 有序数组中的单一元素
题解class Solution {public: int singleNonDuplicate(vector<int>& nums) { int size_ = nums.size(); int lo = 0, hi = size_; if (size_ == 1) return nums[0]; while (lo < hi) { int mi = (lo原创 2021-01-09 14:31:46 · 29 阅读 · 0 评论 -
81. 搜索旋转排序数组 II
题解class Solution {public: bool search(vector<int>& nums, int target) { int size_ = nums.size(); if (size_ == 1) { return target == nums[0]; } int i = 0; while (i < size_) { //i就是排序数列头原创 2021-01-08 12:57:31 · 48 阅读 · 0 评论 -
69. x 的平方根
题解class Solution {public: int mySqrt(int x) { if(x == 1) return 1; int lo = 0, hi = x; while ( lo + 1 < hi ) { int mi = (lo + hi) >> 1; ((x / mi) < mi)? hi = mi: lo = mi; } r原创 2021-01-06 17:50:04 · 38 阅读 · 0 评论 -
524. 通过删除字母匹配到字典里最长单词
题解#include<iostream>#include<string>#include<vector>using namespace std;class Solution {private: bool IsSubstr(string &s, string &t) { int i = 0, j = 0; while (i < s.size() && j < t.size())原创 2021-01-05 11:21:31 · 30 阅读 · 0 评论 -
633.平方数之和
题解class Solution {public: bool judgeSquareSum(int c) { int lo = 0, hi =sqrt(c); while(lo <= hi) { int lo2 = lo*lo; int hi2 = hi*hi; if (lo2 == c - hi2) return true;原创 2021-01-05 00:00:09 · 35 阅读 · 0 评论 -
680. 验证回文字符串 Ⅱ[easy]
题解class Solution {public: bool Palindrome(string &s,int i,int j) { while(i <= j){ if(s[i++] != s[j--]) { return false; } } return true; } bool validPalindrome(string s) {原创 2021-01-04 23:58:29 · 50 阅读 · 0 评论 -
76.最小覆盖字串
题解class Solution {public: string minWindow(string s, string t) { vector<int> chars(128, 0); vector<bool> flags(128, false); for(int i = 0;i < t.size(); ++i){ ++chars[t[i]]; flags[t[i]] =原创 2021-01-04 23:08:22 · 64 阅读 · 0 评论 -
142.环形链表[medium]+floyd判圈法
题解class Solution {public: ListNode *detectCycle(ListNode *head) { ListNode *fast = head; ListNode *slow = head; while (fast != nullptr && fast->next!= nullptr){ fast = fast->next->next;原创 2021-01-04 11:26:24 · 41 阅读 · 0 评论 -
88.合并两个有序数组
题解class Solution {public: void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) { int p = nums1.size()-1; m--;n--; while(n >= 0){ while(m >= 0 && nums1[m] > nums2原创 2021-01-03 22:38:53 · 61 阅读 · 0 评论 -
167.两数之和[easy] + {}可以直接代表vector
题解class Solution {public: vector<int> twoSum(vector<int>& numbers, int target) { int small = 0, large = numbers.size() - 1; while(small < large){ int sum = numbers[small] + numbers[large]; if原创 2021-01-03 11:15:08 · 34 阅读 · 0 评论 -
86分割链表+链表
题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* partition(ListNode* head, int x) { ListNode* sm原创 2021-01-03 09:30:24 · 34 阅读 · 0 评论 -
406根据身高重排序[medium] + 按多种规则排序
题解class Solution {public: vector<vector<int>> reconstructQueue(vector<vector<int>>& people) { sort(people.begin(), people.end(),[](vector<int> &a, vector<int> &b){ // 先把人按身高从大到小排序 r原创 2021-01-02 17:54:53 · 187 阅读 · 0 评论 -
122.买股票的最佳时机[easy]
题解class Solution {public: int maxProfit(vector<int>& prices) { int size_ = prices.size(); if(prices.size() < 2) return 0; int in = -1, profit; // 买入价格和当前利润 int total = 0; // 总利润 fo原创 2021-01-02 16:21:15 · 48 阅读 · 1 评论 -
763.划分字母区间[medium]
题解class Solution {public: vector<int> partitionLabels(string S) { int Voca[26]; int length = S.length(); for(int i = 0;i< length; i++){ Voca[S[i] - 'a'] = i; } vector<int> result;原创 2021-01-02 14:50:24 · 45 阅读 · 0 评论 -
452.用最少的箭引爆气球
目录题目解答思路总结题目https://leetcode-cn.com/problems/minimum-number-of-arrows-to-burst-balloons/解答class Solution {public: int findMinArrowShots(vector<vector<int>>& points) { if(points.empty()) return 0; sort(po原创 2021-01-01 15:05:30 · 32 阅读 · 0 评论 -
605.种花问题[easy]
目录原题和解思路别的解法原题和解https://leetcode-cn.com/problems/can-place-flowers/class Solution {public: bool canPlaceFlowers(vector<int>& flowerbed, int n) { int size_ = flowerbed.size(); int total = 0, i = 1; if(size_ == 1 &am原创 2021-01-01 14:10:51 · 34 阅读 · 0 评论 -
435无重叠区间[medium]
目录题解思路问题题解#include<iostream>#include<vector>#include<algorithm>using namespace std;class Solution {public: int eraseOverlapIntervals(vector<vector<int>>& intervals) { if(intervals.empty()) re原创 2021-01-01 13:58:45 · 33 阅读 · 0 评论 -
135.分发糖果
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-12-31 11:58:27 · 40 阅读 · 0 评论