日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

435-无重叠区间

發(fā)布時(shí)間:2024/1/18 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 435-无重叠区间 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
  • 問題
    給定一組區(qū)間,找出沒有重疊區(qū)間最多的區(qū)間個(gè)數(shù)。

  • 思路[谷歌高暢力扣刷題筆記]
    貪心算法,貪心策略是優(yōu)先保留結(jié)尾小且不相交的區(qū)間。
    首先根據(jù)右邊界升序排序,然后依次比較左邊界和前面的右邊界:沒有重疊就是滿足條件的區(qū)間,有重疊就更新右邊界。

  • 代碼

  • int eraseOverlapIntervals(vector<vector<int>>& intervals) {if(intervals.empty()) { // 沒有元素return 0;}int n = intervals.size();sort(intervals.begin(), intervals.end(), [](vector<int>& a, vector<int>& b) { // 根據(jù)右邊界升序排列return a[1] < b[1];});int cnt=0, prev=intervals[0][1]; // prev代表右邊界for(int i=1; i<n; i++) {if(intervals[i][0] < prev) { // 左邊界不在前一個(gè)的范圍內(nèi)->沒有相交部分cnt++;} else { // 左邊界在前一個(gè)的范圍內(nèi)->更新右邊界prev = intervals[i][1];}}return cnt;}

    總結(jié)

    以上是生活随笔為你收集整理的435-无重叠区间的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。