当前位置: 首页 > news >正文

【算法日志】贪心算法刷题:重叠区问题(day31)

代码随想录刷题60Day


目录

前言

无重叠区间(筛选区间)

划分字母区间(切割区间)

 合并区间


前言

今日的重点是掌握重叠区问题。


无重叠区间(筛选区间)

   int eraseOverlapIntervals(vector<vector<int>>& intervals) {int count = 0;const int size = intervals.size();sort(intervals.begin(), intervals.end());for (int i = 0; i < size; ++i){int right = intervals[i][1];int j;for (j = i + 1; j < size; ++j){if (right > intervals[j][1])right = intervals[j][1];else if (right <= intervals[j][0])break;}i = j - 1;++count;}return size - count;}

划分字母区间(切割区间)

   vector<int> partitionLabels(string s) {vector<int> result;const int size = s.length();int front = 0, back = size - 1;while(front < size){while (s[front] != s[back])--back;if (front < back)for (int i = front + 1; i <= back; ++i){while (s[i] == s[i - 1])++i;if (i > back) break;int j  = size - 1;while (j > back && s[i] != s[j])j--;back = j;}result.push_back(back - front + 1);front = back + 1;back = size - 1;}return result;}

 合并区间

   vector<vector<int>> merge(vector<vector<int>>& intervals) {vector<vector<int>> result;sort(intervals.begin(), intervals.end());int size = intervals.size();for (int i = 0; i < size; ++i){int j;int right = intervals[i][1];for (j = i + 1; j < size; ++j){if (right < intervals[j][0])break;elseright = max(right, intervals[j][1]);}result.push_back({intervals[i][0], right});i = j - 1;}return result;}

http://www.lryc.cn/news/134005.html

相关文章:

  • 基于Jenkins构建生产CICD环境、jenkins安装
  • 基于Java SpringBoot+vue+html 的地方美食系统(2.0版本)
  • opencv-gpu版本编译(添加java支持,可选)实现硬解码
  • 数据分析问答总结
  • Python学习笔记_实战篇(二)_django多条件筛选搜索
  • 【生态经济学】利用R语言进行经济学研究技术——从数据的收集与清洗、综合建模评价、数据的分析与可视化、因果推断等方面入手
  • xml中的vo是干什么用的
  • 现代企业数据泄露的原因分析与建议
  • 飞天使-kubeadm安装一主一从集群
  • string类写时拷贝
  • QT VS编译环境无法打开包括文件type_traits
  • 深入浅出 TCP/IP 协议栈
  • Servlet+JDBC实战开发书店项目讲解第13讲:库存管理功能
  • Shepherd: A Critic for Language Model Generation
  • 【Python爬虫案例】爬取大麦网任意城市的近期演出!
  • 【框架】SpringBoot数组传参问题
  • 四川天蝶电子商务:2023短视频运营分析
  • Git(5)已有项目连接远端git仓库
  • Datawhale Django 后端开发入门 Task05 DefaultRouter、自定义函数
  • JVM的元空间了解吗?
  • WPS中的表格错乱少行
  • Pytorch-day09-模型微调-checkpoint
  • leetcode304. 二维区域和检索 - 矩阵不可变(java)
  • 记一次oracle数据库迁移至mysql数据库(表同步)
  • 打怪升级之从零开始的网络协议
  • Lnton羚通算法算力云平台【PyTorch】教程:torch.nn.Softsign
  • 读SQL学习指南(第3版)笔记02_数据类型
  • 易思智能物流无人值守系统文件上传漏洞复现
  • git获取远端分支和merge
  • linux-进程