99国产精品欲av蜜臀,可以直接免费观看的AV网站,gogogo高清免费完整版,啊灬啊灬啊灬免费毛片

網易首頁 > 網易號 > 正文 申請入駐

華為校招開了侮辱價。

0
分享至

專欄:50多種數據結構徹底征服

專欄:50多種經典圖論算法全部掌握

一網友發文說自己本碩都是雙9,還有國家級獎項,最后華為開獎給了一個13a,開了17k,問有沒有必要去?我覺得可以爭取一下,本科碩士都是985,至少也得給個14a吧,華為的性價比現在越來越向小米看齊了。





--------------下面是今天的算法題--------------

來看下今天的算法題,這題是LeetCode的第547題:省份數量。

問題描述

來源:LeetCode第547題

難度:中等

有 n 個城市,其中一些彼此相連,另一些沒有相連。如果城市 a 與城市 b 直接相連,且城市 b 與城市 c 直接相連,那么城市 a 與城市 c 間接相連。省份是一組直接或間接相連的城市,組內不含其他沒有相連的城市。

給你一個 n x n 的矩陣 isConnected ,其中 isConnected[i][j] = 1 表示第 i 個城市和第 j 個城市直接相連,而 isConnected[i][j] = 0 表示二者不直接相連。返回矩陣中省份的數量。

示例1:



輸入:isConnected = [[1,1,0],[1,1,0],[0,0,1]] 輸出:2

示例2:



輸入:isConnected = [[1,0,0],[0,1,0],[0,0,1]] 輸出:3

  • 1 <= n <= 200

  • n == isConnected.length

  • n == isConnected[i].length

  • isConnected[i][j] 為 1 或 0

  • isConnected[i][i] == 1

  • isConnected[i][j] == isConnected[j][i]

問題分析

這題讓計算省份的數量,其中相連的城市算一個省份,其實就是讓計算無向圖的連通分量個數,關于圖的連通分量我們在中也有提過,具體細節大家可以看下。

這題解決方式比較多,可以使用 。剛開始的時候可以把每一個城市看作是一個省份,也就是一個單獨的連通分量,然后相連的城市可以合并,合并之后省份的數量要減 1 ,最后只需要返回合并之后的連通分量即可,這個就是省份的數量。

除了使用并查集以外我們還可以使用BFS和DFS來解決,使用BFS和DFS的原理都很類似,就是搜索的時候把相連的城市合并,最后返回合并之后的數量即可,這個合并的數量就是省份的數量,我們使用DFS來看下這題的代碼。

JAVA:

public int findCircleNum(int[][] isConnected) {     // 城市的數量     int length = isConnected.length;     // 表示哪些城市被訪問過     boolean[] visited = new boolean[length];     int count = 0;// 相連的城市數量,也就是省份     // 遍歷所有的城市     for (int i = 0; i < length; i++) {         // 如果當前城市沒有被訪問過,說明是一個新的省份,count         // 要加1,并且和這個城市相連的都標記為已訪問過,也就是         // 同一省份的         if (!visited[i]) {             count++;// 省份數量加1             dfs(isConnected, visited, i);         }     }     return count;// 返回省份的數量 } private void dfs(int[][] isConnected, boolean[] visited, int i) {     for (int j = 0; j < isConnected.length; j++) {         if (isConnected[i][j] == 1 && !visited[j]) {             // 如果第i和第j個城市相連,說明他們是同一個省份的,把它標記為已訪問過             visited[j] = true;             // 然后繼續查找和第j個城市相連的城市             dfs(isConnected, visited, j);         }     } }

C++:

public:     int findCircleNum(vector

 > &isConnected) {         // 城市的數量         int length = isConnected.size();         // 表示哪些城市被訪問過         vector

  visited(length, 0);         int count = 0;// 相連的城市數量,也就是省份         // 遍歷所有的城市         for (int i = 0; i < length; i++) {             // 如果當前城市沒有被訪問過,說明是一個新的省份,count             // 要加1,并且和這個城市相連的都標記為已訪問過,也就是             // 同一省份的             if (!visited[i]) {                 count++;// 省份數量加1                 dfs(isConnected, visited, i);             }         }         return count;// 返回省份的數量     }     void dfs(vector

 > &isConnected, vector

  &visited, int i) {         for (int j = 0; j < isConnected.size(); j++) {             if (isConnected[i][j] == 1 && !visited[j]) {                 // 如果第i和第j個城市相連,說明他們是同一個省份的,把它標記為已訪問過                 visited[j] = 1;                 // 然后繼續查找和第j個城市相連的城市                 dfs(isConnected, visited, j);             }         }     }




Python:

def findCircleNum(self, isConnected: List[List[int]]) -> int:     def dfs(i: int):         for j in range(cities):             if isConnected[i][j] == 1 and j not in visited:                 # 如果第i和第j個城市相連,說明他們是同一個省份的,把它標記為已訪問過                 visited.add(j)                 # 然后繼續查找和第j個城市相連的城市                 dfs(j)     cities = len(isConnected)  # 城市的數量     visited = set()  # 表示哪些城市被訪問過     count = 0  # 相連的城市數量,也就是省份     for i in range(cities):         if i not in visited:             count += 1  # 省份數量加1             dfs(i)     return count

筆者簡介

博哥,真名:王一博,畢業十多年, 作者,專注于 數據結構和算法 的講解,在全球30多個算法網站中累計做題2000多道,在公眾號中寫算法題解800多題,對算法題有自己獨特的解題思路和解題技巧,喜歡的可以給個關注,也可以 下載我整理的1000多頁的PDF算法文檔 。

特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
不查不知道,一查才發現!原來全紅嬋的復出,是國家隊下的一盤棋

不查不知道,一查才發現!原來全紅嬋的復出,是國家隊下的一盤棋

夢史
2025-07-24 08:49:22
再勝委內瑞拉!男籃僅5人表現理想 王俊杰程帥澎驚艷,徐杰不合格

再勝委內瑞拉!男籃僅5人表現理想 王俊杰程帥澎驚艷,徐杰不合格

后仰大風車
2025-07-25 21:37:37
東莞全市放假通知!本世紀只有6次!今天正式進入!

東莞全市放假通知!本世紀只有6次!今天正式進入!

東莞好生活
2025-07-25 15:26:35
生完孩子后,我出軌的欲望非常強烈!(女性勿入)

生完孩子后,我出軌的欲望非常強烈!(女性勿入)

性學研究僧
2025-06-17 22:37:40
遼沈戰役決策幕后:林彪三次違抗毛澤東軍令,東北野戰軍生死36小時

遼沈戰役決策幕后:林彪三次違抗毛澤東軍令,東北野戰軍生死36小時

燦爛夏天
2025-07-19 21:24:07
《掃毒風暴》大結局:龍哥被滅口,馬英子被拋棄,小啞巴成大贏家

《掃毒風暴》大結局:龍哥被滅口,馬英子被拋棄,小啞巴成大贏家

白公子探劇
2025-07-25 14:35:16
加時連拿7分絕殺!女籃逆襲進決賽,宮魯鳴戰術落后坐不住了

加時連拿7分絕殺!女籃逆襲進決賽,宮魯鳴戰術落后坐不住了

隱于山海
2025-07-25 17:37:22
32歲楊紫轉變風格,將波點裙帶斷貨,斜劉海造型簡直美神降臨

32歲楊紫轉變風格,將波點裙帶斷貨,斜劉海造型簡直美神降臨

蓓小西
2025-05-31 08:37:18
朱時茂戳穿了陳佩斯被“排擠”的真相,票房逆襲他讓多少資方臉紅

朱時茂戳穿了陳佩斯被“排擠”的真相,票房逆襲他讓多少資方臉紅

洲洲影視娛評
2025-07-23 15:16:30
多名院士呼吁:55歲后非必要別做這幾項健康檢查,做了可能有損傷

多名院士呼吁:55歲后非必要別做這幾項健康檢查,做了可能有損傷

白宸侃片
2025-07-25 18:00:06
此次俄羅斯空難,與史上第二大空難如出一轍,當時死了520人

此次俄羅斯空難,與史上第二大空難如出一轍,當時死了520人

南宗歷史
2025-07-25 16:40:54
清朝的嬪妃為什么要戴長指甲?除了方便皇上,還有一個重要的作用

清朝的嬪妃為什么要戴長指甲?除了方便皇上,還有一個重要的作用

大千世界觀
2025-06-04 21:00:07
叔叔宗繼昌律師發聲:宗慶后晚年承認外有三孩子,說不會虧待他們

叔叔宗繼昌律師發聲:宗慶后晚年承認外有三孩子,說不會虧待他們

興史興談
2025-07-14 15:41:56
完美避開牛市!哪些資金還在持續涌入白酒

完美避開牛市!哪些資金還在持續涌入白酒

風風順
2025-07-26 00:10:37
中國科學院空天院因存在圍標串標行為被暫定全軍采購資格

中國科學院空天院因存在圍標串標行為被暫定全軍采購資格

齊魯壹點
2025-07-24 12:48:39
因小失大? 王欣瑜宣布退出WTA1000蒙特利爾站!

因小失大? 王欣瑜宣布退出WTA1000蒙特利爾站!

田先生籃球
2025-07-25 22:02:12
1965年印軍壓境,巴基斯坦孤立無援,毛主席決斷救亡,鑄就巴鐵

1965年印軍壓境,巴基斯坦孤立無援,毛主席決斷救亡,鑄就巴鐵

南冥那只貓
2025-05-20 10:50:51
最新數據顯示泰柬邊境沖突已致泰方18人死亡

最新數據顯示泰柬邊境沖突已致泰方18人死亡

界面新聞
2025-07-25 21:25:20
公證書一曝光,娃哈哈遺產這些事沒跑了!

公證書一曝光,娃哈哈遺產這些事沒跑了!

螳螂觀察
2025-07-24 19:39:38
兩大司令部被炸,柬軍敗局已定?中方及時表態,送泰柬一句話

兩大司令部被炸,柬軍敗局已定?中方及時表態,送泰柬一句話

起喜電影
2025-07-26 00:03:55
2025-07-26 01:19:00
數據結構和算法
數據結構和算法
專門介紹和寫算法題解的號
238文章數 3關注度
往期回顧 全部

教育要聞

TTS新傳論文帶讀:愛考“媒介學”的院校看過來!!胡翼青老師新論文來啦!!!!

頭條要聞

8旬翁下葬前墓地被人埋死狗沿路埋鐵釘暗器 官方介入

頭條要聞

8旬翁下葬前墓地被人埋死狗沿路埋鐵釘暗器 官方介入

體育要聞

3年過去了,她還是歐洲杯上最酷的姐

娛樂要聞

汪蘇瀧不忍了 !張碧晨痛失《年輪》演唱權

財經要聞

劉煜輝:當下重要不是找確定性而是轉折點

科技要聞

36款熱門車高危智駕場景測試,“團滅”!

汽車要聞

李斌一口氣講了近3個小時樂道L90 原因是為啥?

態度原創

數碼
家居
手機
本地
公開課

數碼要聞

谷歌Pixel Watch 4智能手表曝光:充電口更改,配色更多

家居要聞

環繞設計 空間動線合理

手機要聞

真把天璣 9400+ 裝在「充電寶」上了?

本地新聞

換個城市過夏天|風拂鹽湖,躲進格爾木的盛夏清涼

公開課

李玫瑾:為什么性格比能力更重要?

無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 辽阳市| 南雄市| 台山市| 台南市| 东平县| 拜城县| 偃师市| 哈巴河县| 郸城县| 克拉玛依市| 青田县| 吴忠市| 武清区| 康保县| 金秀| 潍坊市| 山西省| 息烽县| 乌审旗| 永顺县| 定兴县| 乐东| 林西县| 云和县| 大荔县| 宣武区| 大庆市| 景谷| 灵山县| 宁德市| 铁岭市| 华坪县| 松滋市| 武山县| 东明县| 改则县| 兴义市| 桐梓县| 集贤县| 楚雄市| 新和县|