chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

DFS深度優(yōu)先搜索python代碼

冬至子 ? 來源:行在交通 ? 作者:ai聊天機器人 ? 2022-10-12 10:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最近在寫分支定界求TSP的一個小項目,涉及到圖和樹的各種知識,就淺淺的從無向圖的遍歷開始總結一下近期的學習工作,使用DFS的遞歸遍歷無向圖。

鄰接矩陣、鄰接表等都可以用來表示一張圖,這里使用鄰接表數(shù)組來表示,即以頂點為索引的列表數(shù)組,具體實現(xiàn)使用字典來創(chuàng)建鄰接表數(shù)組。

poYBAGNGKzGACJOcAAAxE4eKOeo310.png

深度優(yōu)先搜索DFS簡單地來說,就是在訪問其中一個頂點時,將它標記為已訪問,遞歸的訪問它所有沒有被標記的相鄰頂點。

老習慣,上代碼。

poYBAGNGKzyAAuJ7AABb3wOjgys887.png

運行看結果。

poYBAGNGK0yAHvgcAACSUbrIQFo956.png

淺淺的分析一下遞歸的過程

poYBAGNGK1yAai82AACYeBpPqJc420.png

dfs(0) ---dfs(1)---0已經(jīng)被標記了,下一個dfs(3)---1已經(jīng)被標記了,所以下一個dfs(2)---graph[2]里的0,3都被標記了,回到graph[3],接著dfs(5)--3已經(jīng)被標記了,所以dfs(6)---接下來就簡單了,dfs(4)。好像就結束了應該是這樣吧。

到這里如果就結束的話,顯得敷衍,折騰了一下,實現(xiàn)了一個簡單有點笨的s-v的路徑構建的功能,還是用上面的例子來說明,最后visited = [0,1,3,2,5,6,4],根據(jù)這個標記順序,會有且僅有0-1,1-3,3-2,3-5,5-6,6-4被選中(別問為什么,這是我的規(guī)則)。

pYYBAGNGK26AaZN4AAD8oxmDK2k515.png

首先運行前面的dfs,得到 visited = [0,1,3,2,5,6,4],根據(jù)這個標記順序,會有且僅有0-1,1-3,3-2,3-5,5-6,6-4被選中(別問為什么,這是我的規(guī)則)。看第4和5行,將構建u-v的路徑轉為構建v-u的路徑。

會有人好奇為啥0到5的路徑為啥不是0-3-5這條,因為0-3沒有被標記??!至于為什么,這就是我的規(guī)則,別管(懂的自然會懂我的心路歷程,不懂就算,反正構建路徑又不對成本、距離等做要求)。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

    86764
  • TSP
    TSP
    +關注

    關注

    1

    文章

    25

    瀏覽量

    17213
  • DFS
    DFS
    +關注

    關注

    0

    文章

    26

    瀏覽量

    9408
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    零基礎入門:如何在樹莓派上編寫和運行Python程序?

    是一種非常有用的編程語言,其語法易于閱讀,允許程序員使用比匯編、C或Java等語言更少的代碼行。Python編程語言最初實際上是作為Linux的腳本語言而開發(fā)的。Py
    的頭像 發(fā)表于 03-25 09:27 ?752次閱讀
    零基礎入門:如何在樹莓派上編寫和運行<b class='flag-5'>Python</b>程序?

    創(chuàng)建了用于OpenVINO?推理的自定義C++和Python代碼,從C++代碼中獲得的結果與Python代碼不同是為什么?

    創(chuàng)建了用于OpenVINO?推理的自定義 C++ 和 Python* 代碼。 在兩個推理過程中使用相同的圖像和模型。 從 C++ 代碼中獲得的結果與 Python*
    發(fā)表于 03-06 06:22

    運行OVModelForCausalLM Python模塊時出錯了,怎么解決?

    創(chuàng)建了一個自定義 Python* 代碼,類似于遵循 240-dolly-2-instruction 的 Jupyter 筆記本。 OVModelForCausalLM Python* 模塊運行時出錯。
    發(fā)表于 03-05 06:44

    百度搜索與文心智能體平臺接入DeepSeek及文心大模型深度搜索

    近日,百度搜索與文心智能體平臺聯(lián)合宣布了一項重要更新:將全面接入DeepSeek及文心大模型最新的深度搜索功能。這一更新將為用戶和開發(fā)者帶來更加智能、高效的搜索和智能體創(chuàng)建體驗。 據(jù)悉
    的頭像 發(fā)表于 02-17 09:14 ?640次閱讀

    使用Python實現(xiàn)xgboost教程

    裝: bash復制代碼conda install -c conda-forge xgboost 2. 導入必要的庫 在你的Python腳本或Jupyter Notebook中,導入必要的庫: python復制
    的頭像 發(fā)表于 01-19 11:21 ?1381次閱讀

    ChatGPT新增實時搜索與高級語音功能

    。OpenAI對搜索算法進行了深度優(yōu)化,使得ChatGPT能夠在用戶提出問題后,迅速獲取到分鐘級別的最新信息,包括股票、新聞等。這一功能的加入,極大地滿足了用戶對即時數(shù)據(jù)的需求,使得ChatGPT在各類應用場景中更加得心應手。 同時,ChatGPT還推出了高級語音功能。在
    的頭像 發(fā)表于 12-17 14:08 ?645次閱讀

    使用Python進行串口通信的案例

    python復制代碼 import serialimport time # 配置串口參數(shù)serial_port = '/dev/ttyUSB0' # 在Windows上可能是 'COM3' 或其他類
    的頭像 發(fā)表于 11-22 09:11 ?1471次閱讀

    對比Python與Java編程語言

    Python與Java都是目前非常流行的編程語言,它們各有其獨特的優(yōu)勢和適用場景。以下是對這兩種編程語言的對比: 一、語法和易用性 Python 語法簡潔,代碼更易讀,非常適合初學者。 動態(tài)類型系統(tǒng)
    的頭像 發(fā)表于 11-15 09:31 ?1107次閱讀

    如何用python控制usb2any?

    我想用python控制usb2any,在網(wǎng)上搜索后得到的關于usb2any的資料很少,是否有官方的usb2any函數(shù)庫?
    發(fā)表于 11-08 14:36

    使用Python進行圖像處理

    下面是一個關于使用Python在幾行代碼中分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?589次閱讀
    使用<b class='flag-5'>Python</b>進行圖像處理

    dp接口的最新技術發(fā)展

    深度優(yōu)先搜索DFS)是一種基本的算法,用于遍歷或搜索樹或圖。它從一個頂點開始,盡可能深地搜索
    的頭像 發(fā)表于 10-30 13:52 ?578次閱讀

    Python常用函數(shù)大全

    Python 世界里,有一些寶藏函數(shù)和模塊,它們可以讓你編程更輕松、代碼更高效。這篇文章將帶你一一認識這些神器,讓你的開發(fā)生活瞬間輕松不少!
    的頭像 發(fā)表于 10-27 17:20 ?919次閱讀

    如何用python控制usb2any?

    我想用python控制usb2any,在網(wǎng)上搜索后得到的關于usb2any的資料很少,是否有官方的usb2any函數(shù)庫?
    發(fā)表于 09-27 06:44

    pytorch和python的關系是什么

    ,PyTorch已經(jīng)成為了一個非常受歡迎的框架。本文將介紹PyTorch和Python之間的關系,以及它們在深度學習領域的應用。 Python簡介 Python是一種高級、解釋型、通用
    的頭像 發(fā)表于 08-01 15:27 ?3284次閱讀

    Python在AI中的應用實例

    Python在人工智能(AI)領域的應用極為廣泛且深入,從基礎的數(shù)據(jù)處理、模型訓練到高級的應用部署,Python都扮演著至關重要的角色。以下將詳細探討Python在AI中的幾個關鍵應用實例,包括機器學習、
    的頭像 發(fā)表于 07-19 17:16 ?2709次閱讀