最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

go語(yǔ)言題解LeetCode228匯總區(qū)間示例詳解

 更新時(shí)間:2022年12月30日 14:49:12   作者:劉09k11  
這篇文章主要為大家介紹了go語(yǔ)言題解LeetCode228匯總區(qū)間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

題目描述

原題鏈接 :

228. 匯總區(qū)間

給定一個(gè)  無(wú)重復(fù)元素 的 有序 整數(shù)數(shù)組 nums 。

返回 恰好覆蓋數(shù)組中所有數(shù)字 的 最小有序 區(qū)間范圍列表 。也就是說(shuō),nums 的每個(gè)元素都恰好被某個(gè)區(qū)間范圍所覆蓋,并且不存在屬于某個(gè)范圍但不屬于 nums 的數(shù)字 x 。

列表中的每個(gè)區(qū)間范圍 [a,b] 應(yīng)該按如下格式輸出:

  • "a->b" ,如果 a != b
  • "a" ,如果 a == b  

示例 1:

輸入:nums = [0,1,2,4,5,7]
輸出:["0->2","4->5","7"]
解釋:區(qū)間范圍是:
[0,2] --> "0->2"
[4,5] --> "4->5"
[7,7] --> "7"

示例 2:

輸入:nums = [0,2,3,4,6,8,9]
輸出:["0","2->4","6","8->9"]
解釋:區(qū)間范圍是:
[0,0] --> "0"
[2,4] --> "2->4"
[6,6] --> "6"
[8,9] --> "8->9"

提示:

0 <= nums.length <= 20

-2^31 <= nums[i] <= 2^31 - 1

  • nums 中的所有值都 互不相同
  • nums 按升序排列

思路分析

本題思路比較明晰,設(shè)立雙指針,一前一后遍歷數(shù)組,當(dāng)遇到結(jié)果不是有序遞增,即nums[j]+1 != nums[j+1]時(shí),中斷數(shù)組,從i,到j(luò)進(jìn)行條件判斷插入字符串,插入完之后,將i移動(dòng)到j(luò)后面那個(gè)位置,即i = j + 1。

本題難點(diǎn)在于邊界處理,因?yàn)樯婕暗絡(luò)+1,遍歷時(shí)只能遍歷到n-1,最后一位需要依照相同的思路重新判斷一遍,如果數(shù)組為空或者只有一個(gè)元素,循環(huán)語(yǔ)句也不好判斷,因?yàn)闊o(wú)法與第二個(gè)元素相比較。有評(píng)論使用逃課方法,即在數(shù)組后額外安插一個(gè)整型最大值,但這樣的方法如果數(shù)組原本最后一個(gè)元素是最大值-1時(shí),會(huì)導(dǎo)致結(jié)果錯(cuò)誤不能使用。

AC 代碼

vector<string> summaryRanges(vector<int> &nums) {
	vector<string> s;
	if (nums.size() == 0)
		return s;
	if (nums.size() == 1) {
		s.push_back(to_string(nums[0]));
		return s;
	}
	int i = 0, j = 0, n = nums.size();
	string t;
	for (; j < n - 1; j++) {
		if (nums[j] + 1 != nums[j + 1]) {
			if (i == j)
				s.push_back(to_string(nums[i]));
			else
				s.push_back(to_string(nums[i]) + "->" + to_string(nums[j]));
			i = j + 1;
		}
	}
	if (i == j)
		s.push_back(to_string(nums[i]));
	else
		s.push_back(to_string(nums[i]) + "->" + to_string(nums[j]));
	return s;
}

以上就是go語(yǔ)言題解LeetCode228匯總區(qū)間示例詳解的詳細(xì)內(nèi)容,更多關(guān)于go語(yǔ)言匯總區(qū)間的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 一文秒懂Go 編寫(xiě)命令行工具的代碼

    一文秒懂Go 編寫(xiě)命令行工具的代碼

    這篇文章主要介紹了一文秒懂Go 編寫(xiě)命令行工具的代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • Golang設(shè)計(jì)模式之組合模式講解

    Golang設(shè)計(jì)模式之組合模式講解

    這篇文章主要介紹了Golang設(shè)計(jì)模式之組合模式,組合模式針對(duì)于特定場(chǎng)景,如文件管理、組織管理等,使用該模式能簡(jiǎn)化管理,使代碼變得非常簡(jiǎn)潔
    2023-01-01
  • Golang語(yǔ)言的跨平臺(tái)UI工具包fyne使用詳解

    Golang語(yǔ)言的跨平臺(tái)UI工具包fyne使用詳解

    這篇文章主要為大家介紹了Golang語(yǔ)言的跨平臺(tái)UI工具包fyne使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Golang中設(shè)置全局變量并在其他文件中使用

    Golang中設(shè)置全局變量并在其他文件中使用

    全局變量是被整個(gè)程序都可見(jiàn)的變量,通常用于存儲(chǔ)程序中需要共享的數(shù)據(jù),本文就來(lái)介紹一下Golang中設(shè)置全局變量并在其他文件中使用的方法,感興趣的可以了解一下
    2024-01-01
  • 簡(jiǎn)介Go語(yǔ)言中的select語(yǔ)句的用法

    簡(jiǎn)介Go語(yǔ)言中的select語(yǔ)句的用法

    這篇文章主要介紹了簡(jiǎn)介Go語(yǔ)言中的select語(yǔ)句的用法,是golang入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-10-10
  • 深入了解Golang中Slice切片的使用

    深入了解Golang中Slice切片的使用

    本文主要為大家詳細(xì)介紹了Golang中Slice切片的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2023-02-02
  • Golang實(shí)現(xiàn)定時(shí)任務(wù)的幾種方法小結(jié)

    Golang實(shí)現(xiàn)定時(shí)任務(wù)的幾種方法小結(jié)

    在 Golang 開(kāi)發(fā)中,定時(shí)任務(wù)是常見(jiàn)的需求,本文將介紹幾種在 Golang 中實(shí)現(xiàn)定時(shí)任務(wù)的方法,包括 time 包的定時(shí)器、ticker,以及第三方庫(kù) cron,并通過(guò)示例代碼展示它們的使用方式,需要的朋友可以參考下
    2024-01-01
  • Go語(yǔ)言中處理JSON數(shù)據(jù)的編碼和解碼的方法

    Go語(yǔ)言中處理JSON數(shù)據(jù)的編碼和解碼的方法

    在Go語(yǔ)言中,處理JSON數(shù)據(jù)的編碼和解碼主要依賴于標(biāo)準(zhǔn)庫(kù)中的encoding/json包,這個(gè)包提供了兩個(gè)核心的函數(shù):Marshal和Unmarshal,本文給大家介紹了Go語(yǔ)言中處理JSON數(shù)據(jù)的編碼和解碼的方法,需要的朋友可以參考下
    2024-04-04
  • GoLand利用plantuml生成UML類圖

    GoLand利用plantuml生成UML類圖

    本文主要介紹了GoLand利用plantuml生成UML類圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • 如何理解Go函數(shù)是一等公民原理及使用場(chǎng)景

    如何理解Go函數(shù)是一等公民原理及使用場(chǎng)景

    這篇文章主要為大家介紹了如何理解Go函數(shù)是一等公民及使用場(chǎng)景詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07

最新評(píng)論

潞西市| 济南市| 安陆市| 离岛区| 潍坊市| 海阳市| 石台县| 农安县| 枣强县| 子洲县| 溆浦县| 葫芦岛市| 惠安县| 永清县| 大埔区| 蒲江县| 清流县| 扶风县| 勐海县| 闵行区| 恭城| 合水县| 兴国县| 寻甸| 丹江口市| 永吉县| 新乡市| 夏河县| 盖州市| 茶陵县| 红河县| 交口县| 新宁县| 宁城县| 龙江县| 禹州市| 乾安县| 泉州市| 临邑县| 葵青区| 娱乐|