代码随想录第三十七天打卡

56. 合并区间

本题也是重叠区间问题,如果昨天三道都吸收的话,本题就容易理解了。

代码随想录

class Solution {
public:
    static bool cmp(vector<int>a,vector<int>b){
        if (a[0]==b[0])return a[1]<b[1];
        return a[0]<b[0];
    }
    vector<vector<int>> merge(vector<vector<int>>& intervals) {
        sort(intervals.begin(),intervals.end(),cmp);
        vector<vector<int>>res;
        if (intervals.empty())return res;
        res.push_back(intervals[0]);
        for (int i=1;i<intervals.size();i++){
            if (intervals[i][0]<=res.back()[1]){
                res.back()[1]=max(intervals[i][1],res.back()[1]);
            }
            else{
                res.push_back(intervals[i]);
            }
        }
        return res;
    }
};

总结

昨天的思路今天就用不了了。

738.单调递增的数字

代码随想录

class Solution {
public:
    int monotoneIncreasingDigits(int n) {
        string s=to_string(n);
        int flag=s.size();
        for (int i=s.size()-1;i>0;i--){
            if (s[i]<s[i-1]){
                flag=i;
                s[i-1]--;
            }
        }
        for (int i=flag;i<s.size();i++){
            s[i]='9';
        }
        return stoi(s);
    }
};

总结

整数类型无法修改的时候,应该想到用string。

968.监控二叉树 (可跳过)

本题是贪心和二叉树的一个结合,比较难,一刷大家就跳过吧。

代码随想录

/**
 * Definition for a binary tree node.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode() : val(0), left(nullptr), right(nullptr) {}
 *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
 *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
 * };
 */
class Solution {
public:
    int res=0;
    int traversal(TreeNode* node){
        if (!node)return 2;
        int left=traversal(node->left);
        int right=traversal(node->right);
        if (left==2 && right==2)return 0;
        if (left==0 || right==0){
            res++;
            return 1;
            }
        if (left==1 || right==1)return 2;
        return -1;
    }
    int minCameraCover(TreeNode* root) {
        if (traversal(root)==0)res++;
        return res;
    }
};

总结

自己写思路全无,一看答案就觉得妙极了。看来还要三刷。

相关推荐

  1. 代码随想

    2024-06-14 09:50:05       31 阅读
  2. 代码随想

    2024-06-14 09:50:05       31 阅读
  3. 代码随想

    2024-06-14 09:50:05       27 阅读
  4. 代码随想第二

    2024-06-14 09:50:05       25 阅读
  5. 代码随想第二

    2024-06-14 09:50:05       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-14 09:50:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-14 09:50:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-14 09:50:05       82 阅读
  4. Python语言-面向对象

    2024-06-14 09:50:05       91 阅读

热门阅读

  1. 数据库什么情况使用索引(附MYSQL示例)

    2024-06-14 09:50:05       37 阅读
  2. 速盾的防护功能是如何实现的?

    2024-06-14 09:50:05       32 阅读
  3. 判断IP地址是否与CIDR表示的96.32/12匹配

    2024-06-14 09:50:05       33 阅读
  4. QT——事件

    2024-06-14 09:50:05       35 阅读
  5. SqlSugar无实体CURD应用-C#

    2024-06-14 09:50:05       31 阅读
  6. uni-app canvas创建画布

    2024-06-14 09:50:05       31 阅读
  7. 自然语言处理(NLP)教学解决方案

    2024-06-14 09:50:05       30 阅读
  8. Civil 3d中 三角网曲面求取二维和三维面积

    2024-06-14 09:50:05       29 阅读
  9. SQL 基础入门教程

    2024-06-14 09:50:05       31 阅读
  10. SqlServer 数据库挂起

    2024-06-14 09:50:05       31 阅读