C語(yǔ)言題解Leetcode56合并區(qū)間實(shí)例
解題思路
題目鏈接 56. 合并區(qū)間
本質(zhì)在于兩兩做對(duì)比,如果兩個(gè)區(qū)間,可以合并,則為結(jié)果二維數(shù)組中的一員,如果不可合并,則放入結(jié)果二維數(shù)組,所以根本在于,如何判斷兩個(gè)區(qū)間,是可合并,還是不可合并
1.首先將二維數(shù)組,按照左端元素進(jìn)行排序
2.將第一個(gè)元素放入結(jié)果區(qū)間列表
3.如果當(dāng)前區(qū)間的左端元素比結(jié)果區(qū)間列表最后一個(gè)區(qū)間右端元素小,則存在包含關(guān)系,此時(shí)只需更新右端元素即可 (更新為當(dāng)前區(qū)間的右端元素與結(jié)果區(qū)間的右端元素的最大值)
4.如果不包含,則將當(dāng)前區(qū)間加入結(jié)果區(qū)間列表,作為最后一個(gè)區(qū)間 5.輸出結(jié)果區(qū)間列表
解題遇到的問(wèn)題
1.二維數(shù)組排序
2.二維數(shù)組在不知道大小時(shí),如何初始化?
后續(xù)需要總結(jié)學(xué)習(xí)的知識(shí)點(diǎn)
- Arrays.copyOf源碼和使用方法總結(jié)
- 二維數(shù)組排序、重新compare
## 解法1 class Solution { public int[][] merge(int[][] intervals) { Arrays.sort(intervals, new Comparator<int[]>() { @Override public int compare(int[] o1, int[] o2) { return o1[0] - o2[0]; } }); int index = 0; for (int i = 1; i < intervals.length; i++) { if (intervals[index][1] < intervals[i][0]) { index++; intervals[index][0] = intervals[i][0]; intervals[index][1] = intervals[i][1]; } else { intervals[index][1] = Math.max(intervals[i][1], intervals[index][1]); } } return Arrays.copyOf(intervals, index + 1); } }
以上就是C語(yǔ)言題解Leetcode56合并區(qū)間實(shí)例的詳細(xì)內(nèi)容,更多關(guān)于C語(yǔ)言 Leetcode合并區(qū)間的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- C++實(shí)現(xiàn)LeetCode(56.合并區(qū)間)
- Go/C語(yǔ)言LeetCode題解997找到小鎮(zhèn)法官
- C語(yǔ)言雙指針多方法旋轉(zhuǎn)數(shù)組解題LeetCode
- C語(yǔ)言動(dòng)態(tài)規(guī)劃點(diǎn)殺dp算法LeetCode炒股習(xí)題案例解析
- C/C++題解LeetCode1295統(tǒng)計(jì)位數(shù)為偶數(shù)的數(shù)字
- C/C++哈希表優(yōu)化LeetCode題解997找到小鎮(zhèn)的法官
- C++ LeetCode1796字符串中第二大數(shù)字
- C++?LeetCode542矩陣示例詳解
相關(guān)文章
C語(yǔ)言數(shù)據(jù)的存儲(chǔ)專項(xiàng)分析
使用編程語(yǔ)言進(jìn)行編程時(shí),需要用到各種變量來(lái)存儲(chǔ)各種信息。變量保留的是它所存儲(chǔ)的值的內(nèi)存位置。這意味著,當(dāng)您創(chuàng)建一個(gè)變量時(shí),就會(huì)在內(nèi)存中保留一些空間。您可能需要存儲(chǔ)各種數(shù)據(jù)類型的信息,操作系統(tǒng)會(huì)根據(jù)變量的數(shù)據(jù)類型,來(lái)分配內(nèi)存和決定在保留內(nèi)存中存儲(chǔ)什么2022-07-07簡(jiǎn)單談?wù)勱P(guān)于C++中大隨機(jī)數(shù)的問(wèn)題
這篇文章主要介紹了關(guān)于C++中大隨機(jī)數(shù)的問(wèn)題,文中給出了詳細(xì)的示例代碼,相信對(duì)大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,有需要的朋友可以一起來(lái)學(xué)習(xí)學(xué)習(xí)。2017-01-01Clion2020.2.x最新激活碼破解版附安裝教程(Mac Linux Windows)
Clion2020增加了很多新特性,修復(fù)了大量bug,大大提高了開發(fā)效率。這篇文章主要介紹了Clion2020.2.x最新激活碼破解版附安裝教程(Mac Linux Windows),需要的朋友可以參考下2020-11-11一起來(lái)學(xué)習(xí)C語(yǔ)言的輸入和輸出
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言的輸入和輸出,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助2022-03-03C++ LeetCode1945題解字符串轉(zhuǎn)化后的各位數(shù)字之和
這篇文章主要為大家介紹了C++ LeetCode1945題解字符串轉(zhuǎn)化后的各位數(shù)字之和示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12C語(yǔ)言驅(qū)動(dòng)開發(fā)之內(nèi)核文件的讀寫
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言驅(qū)動(dòng)開發(fā)中內(nèi)核文件的讀寫的系列函數(shù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06