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

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

我國程序員數量突破 940 萬。

0
分享至

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

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

2024開放原子開發者大會于20日至21日在武漢圓滿舉行,工業和信息化部負責人宣布了一項重要數據:我國軟件開發者群體規模已歷史性突破940萬大關,其中武漢地區有40萬。

我國已經成為全球開源參與者數量排名第二,增長速度最快的國家,開源鴻蒙生態設備超過了10億臺,引發大量關注。據了解,目前已有超過70家單位加入開源鴻蒙生態,超過8100人參與代碼貢獻,貢獻代碼超過1.2億行。



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

來看下今天的算法題,這題是LeetCode的第54題:螺旋矩陣。

問題描述

來源:LeetCode第54題

難度:中等

給你一個 m 行 n 列的矩陣 matrix ,請按照 順時針螺旋順序 ,返回矩陣中的所有元素。

示例1:



輸入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 輸出:[1,2,3,6,9,8,7,4,5]

示例2:



輸入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] 輸出:[1,2,3,4,8,12,11,10,9,5,6,7]

  • m == matrix.length

  • n == matrix[i].length

  • 1 <= m, n <= 10

  • -100 <= matrix[i][j] <= 100

問題分析

這題是讓順時針螺旋順序返回矩陣中的所有元素,我們可以直接模擬, 從外到內一圈一圈的打印矩陣中的元素 ,需要使用4個變量來記錄訪問的位置,直到全部元素都訪問完為止,如下圖所示。


這里還要注意上下左右四個方向訪問的邊界,哪些是開區間哪些是閉區間,代碼如下。

JAVA:

public List   spiralOrder (int[][] matrix)  {     List
         
  ans =  new ArrayList<>();      int n = matrix.length, m = matrix[ 0].length;      int up =  0, down = n -  1, left =  0, right = m -  1;      int total = m * n; // 總的元素個數      while (ans.size() < total) {          // 上面,從左往右打印,左閉右閉區間[left,right]          for ( int i = left; i <= right && ans.size() < total; i++)             ans.add(matrix[up][i]);          // 右邊,從上往下打印,上開下開區間(up,down)          for ( int i = up +  1; i <= down -  1 && ans.size() < total; i++)             ans.add(matrix[i][right]);          // 下邊,從右往左打印,右閉左閉區間[right,left]          for ( int i = right; i >= left && ans.size() < total; i--)             ans.add(matrix[down][i]);          // 左邊,從下往上打印,下開上開區間(down,up)          for ( int i = down -  1; i >= up +  1 && ans.size() < total; i--)             ans.add(matrix[i][left]);         left++;         right--;         up++;         down--;     }      return ans; }

C++:

public:     vector

  spiralOrder(vector

 > &matrix) {         vector

  ans;         int n = matrix.size(), m = matrix[0].size();         int up = 0, down = n - 1, left = 0, right = m - 1;         int total = m * n;// 總的元素個數         while (ans.size() < total) {             // 上面,從左往右打印,左閉右閉區間[left,right]             for (int i = left; i <= right && ans.size() < total; i++)                 ans.push_back(matrix[up][i]);             // 右邊,從上往下打印,上開下開區間(up,down)             for (int i = up + 1; i <= down - 1 && ans.size() < total; i++)                 ans.push_back(matrix[i][right]);             // 下邊,從右往左打印,右閉左閉區間[right,left]             for (int i = right; i >= left && ans.size() < total; i--)                 ans.push_back(matrix[down][i]);             // 左邊,從下往上打印,下開上開區間(down,up)             for (int i = down - 1; i >= up + 1 && ans.size() < total; i--)                 ans.push_back(matrix[i][left]);             left++;             right--;             up++;             down--;         }         return ans;     }



Python:

def spiralOrder(self, matrix: List[List[int]]) -> List[int]:     ans = []     n, m = len(matrix), len(matrix[0])     up, down, left, right = 0, n - 1, 0, m - 1     total = m * n  # 總的元素個數     while len(ans) < total:         # 上面,從左往右打印,左閉右閉區間[left,right]         for i in range(left, right + 1):             ans.append(matrix[up][i])         # 右邊,從上往下打印,上開下閉區間(up,down]         for i in range(up + 1, down + 1):             ans.append(matrix[i][right])         # 上下重疊就終止         if up == down or left == right: break         # 下邊,從右往左打印,右開左閉區間(right,left]         for i in range(right - 1, left - 1, -1):             ans.append(matrix[down][i])         # 左邊,從下往上打印,下開上開區間(down,up)         for i in range(down - 1, up, -1):             ans.append(matrix[i][left])         left += 1         right -= 1         up += 1         down -= 1     return ans

筆者簡介

博哥,真名:王一博,畢業十多年, 作者,專注于 數據結構和算法 的講解,在全球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.

相關推薦
熱點推薦
殲10擊落3架陣風,成飛集成卻巨虧7500萬!軍工光環下的敗家子?

殲10擊落3架陣風,成飛集成卻巨虧7500萬!軍工光環下的敗家子?

獵火照狼山
2025-05-10 19:41:36
比蘋果更嚴格?華為鴻蒙電腦發布,不支持第三方安裝!

比蘋果更嚴格?華為鴻蒙電腦發布,不支持第三方安裝!

一個有靈魂的作者
2025-05-09 13:03:22
沈陽獻血40次以上可免費乘公交!誰說獻愛心只是紙面榮譽?

沈陽獻血40次以上可免費乘公交!誰說獻愛心只是紙面榮譽?

垛垛糖
2025-05-09 23:07:39
青島大媽轉身撞人案,為何說這次法官可能沒判錯?

青島大媽轉身撞人案,為何說這次法官可能沒判錯?

17譚
2025-05-10 16:29:01
不打了!印度緊急服軟,世界從此變天了!

不打了!印度緊急服軟,世界從此變天了!

大嘴說天下
2025-05-10 23:31:54
一則舉報牽出“迷藥”暗網,小學教師、麻醉師竟成為販毒鏈條的一環!

一則舉報牽出“迷藥”暗網,小學教師、麻醉師竟成為販毒鏈條的一環!

揚子晚報
2025-05-10 21:23:01
央視怒曝6大“毒”日用品,潛伏期長致癌率高,很多人還在天天用

央視怒曝6大“毒”日用品,潛伏期長致癌率高,很多人還在天天用

涵豆說娛
2025-05-10 20:05:02
“后悔考基層了”,女孩曬上岸一年對比圖,淚流滿面不復當年笑臉

“后悔考基層了”,女孩曬上岸一年對比圖,淚流滿面不復當年笑臉

熙熙說教
2025-05-09 20:39:57
S媽首度公開大S夫婦為小玥兒慶生視頻,大S靠女兒肩膀唱歌好漂亮

S媽首度公開大S夫婦為小玥兒慶生視頻,大S靠女兒肩膀唱歌好漂亮

顧蔡衛
2025-05-11 06:55:52
央視怒批!“絕望的文盲”丟臉到國外,郝蕾的話終于有人信了

央視怒批!“絕望的文盲”丟臉到國外,郝蕾的話終于有人信了

吐不滿的痰娛
2025-05-10 16:11:43
日本最高學府塌房了,東大的教授們光明正大地在包間挑姑娘?

日本最高學府塌房了,東大的教授們光明正大地在包間挑姑娘?

日本物語
2025-05-10 19:43:37
父女關系已確認!本科生發表14篇SCI論文已查出,他親手害了女兒

父女關系已確認!本科生發表14篇SCI論文已查出,他親手害了女兒

平老師666
2025-05-10 21:13:39
31歲終獲首冠!凱恩高舉德甲獎盤+深情親吻 哽咽受訪:我等了太久

31歲終獲首冠!凱恩高舉德甲獎盤+深情親吻 哽咽受訪:我等了太久

我愛英超
2025-05-11 06:33:01
帶著勝利清單直飛中國,巴西總統這次不演了

帶著勝利清單直飛中國,巴西總統這次不演了

牛鍋巴小釩
2025-05-10 22:41:19
全網“圍剿”小米汽車

全網“圍剿”小米汽車

互聯網思維
2025-05-10 23:35:25
套現60億后主動破產,重慶一家人把755億巨債留給了股民

套現60億后主動破產,重慶一家人把755億巨債留給了股民

灰鴿觀察室
2025-05-10 23:54:50
令人擔憂!網傳預測上海2026年幼兒園入園人數,與2020年相比暴跌近40%!

令人擔憂!網傳預測上海2026年幼兒園入園人數,與2020年相比暴跌近40%!

可達鴨面面觀
2025-05-10 22:21:08
44死118傷!印巴停火協議無效,印軍發起報復,巴基斯坦損失慘重

44死118傷!印巴停火協議無效,印軍發起報復,巴基斯坦損失慘重

說天說地說實事
2025-05-11 06:39:05
深圳一征婚信息嚇退眾人!26歲離異女要求年薪百萬,長得帥的00后

深圳一征婚信息嚇退眾人!26歲離異女要求年薪百萬,長得帥的00后

火山詩話
2025-05-11 07:24:10
中美會談互免關稅!周末爆出的四大消息沖擊股市(5.10)!

中美會談互免關稅!周末爆出的四大消息沖擊股市(5.10)!

說故事的阿襲
2025-05-11 00:12:15
2025-05-11 10:20:49
數據結構和算法
數據結構和算法
專門介紹和寫算法題解的號
227文章數 2關注度
往期回顧 全部

科技要聞

首款折疊屏iPhone,有新消息!

頭條要聞

牛彈琴:印巴戲劇性地突然宣布停火 背后有五大原因

頭條要聞

牛彈琴:印巴戲劇性地突然宣布停火 背后有五大原因

體育要聞

這個老頭兒,仍然是你們的頭兒

娛樂要聞

李凱馨為錄音風波道歉,網友不接受

財經要聞

重慶一家人把755億巨債留給了股民

汽車要聞

空間表現是優勢 極狐T1將于5月底正式亮相發布

態度原創

藝術
手機
健康
公開課
軍事航空

藝術要聞

故宮珍藏的墨跡《十七帖》,比拓本更精良,這才是地道的魏晉寫法

手機要聞

曝三星首款三折疊手機顯示面板,最早下月開啟量產

唇皰疹和口腔潰瘍是"同伙"嗎?

公開課

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

軍事要聞

印巴停火后互稱擊落對方無人機

無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 汝州市| 嘉祥县| 西峡县| 浦县| 青田县| 三明市| 尚义县| 樟树市| 凌海市| 永昌县| 潮州市| 紫云| 福鼎市| 凤凰县| 镇雄县| 崇礼县| 满洲里市| 富顺县| 杭锦后旗| 绍兴县| 长宁区| 梁山县| 安达市| 全椒县| 长海县| 铅山县| 马公市| 蒲江县| 长子县| 梅州市| 康定县| 冀州市| 若羌县| 万盛区| 太谷县| 织金县| 衢州市| 深圳市| 福海县| 义乌市| 合山市|