簡化您的工作流程:搜尋 miniwebtool。
添加插件
主頁 > 數學 > 進階數學計算 > 漢密爾頓路徑檢查器
 

漢密爾頓路徑檢查器

檢查圖中是否包含漢密爾頓路徑或漢密爾頓迴圈。執行帶有 Warnsdorff 修剪的回溯演算法,驗證連通性與度數前提條件,測試 Dirac 和 Ore 充分條件,並在動畫 SVG 可視化中顯示見證路徑。

漢密爾頓路徑檢查器
接受 A-B, A->B, A B, A,B,或像 0 1 1 0 這樣的矩陣列。標籤請使用字母、數字或下底線。
以逗號或空格分隔的標籤,每行一個。若省略,則預設為 A, B, C…。

Embed 漢密爾頓路徑檢查器 Widget

漢密爾頓路徑檢查器

漢密爾頓路徑檢查器 用於判定圖形是否包含 漢密爾頓路徑(訪問每個頂點恰好一次的序列)或 漢密爾頓迴圈(額外回到起始頂點的路徑)。它結合了快速的結構預檢查(連通性、度數先決條件、Dirac 定理、Ore 定理)與 Warnsdorff 啟發式優化的回溯搜尋,並透過逐步動畫視覺化見證路徑。

什麼是漢密爾頓路徑?

給定一個具有 n 個頂點的圖 G = (V, E)漢密爾頓路徑 是所有頂點的一個有序序列 v1, v2, …, vn,使得每一對連續的頂點 (vi, vi+1) 都是 G 的一條邊,且每個頂點恰好出現一次。如果額外滿足 (vn, v1) 也是一條邊,則該序列稱為 漢密爾頓迴圈

漢密爾頓路徑: v1 — v2 — v3 — … — vn (全部不同,每對連續頂點為一邊) 漢密爾頓迴圈: v1 — v2 — v3 — … — vn — v1 (閉合回到起點)

此問題以 William Rowan Hamilton 的名字命名。他在 1857 年發明了 Icosian game(二十面體遊戲),要求解題者在正十二面體的頂點上找到一個恰好訪問每個頂點一次的迴圈。

為何困難:NP-Completeness

漢密爾頓路徑判定問題和漢密爾頓迴圈判定問題都是 NP-complete(Karp, 1972)。除非 P = NP,否則不存在能解決所有情況的多項式時間演算法。在最壞的情況下,回溯搜尋需要探索大小達 (n−1)! 的搜尋樹。這就是為什麼本計算機將輸入限制為 20 個頂點的原因 —— n 的微小增加會導致執行時間呈爆炸式增長。

在實踐中,Warnsdorff 啟發式(由 Heinrich Warnsdorff 於 1823 年針對騎士巡邏問題提出)使結構化圖形的搜尋速度大幅提升:在每一步中,演算法將當前路徑延伸到具有 最少 剩餘未訪問鄰居的未訪問頂點。這種貪婪規則能防止搜尋陷入死角,並經常在性能良好的圖形上找到無回溯的漢密爾頓巡迴。

必要條件 —— 快速拒絕

在執行昂貴的搜尋之前,本計算機會拒絕那些絕對不可能包含漢密爾頓路徑的圖形:

這些規則能在線性時間內拒絕許多無望的輸入,避免浪費回溯精力。

充分條件 —— 經典定理

幾條經典定理給出了保證無向簡單圖中存在漢密爾頓迴圈的 充分(但非必要)條件。如果其中任何一條適用,計算機會將結果標記為「保證存在」而無需運行搜尋 —— 儘管它仍會展示一個見證迴圈。

Dirac 定理 (1952)

如果 G 是一個頂點數 n ≥ 3 的簡單無向圖,且每個頂點的度數至少為 n / 2,則 G 具有漢密爾頓迴圈。

δ(G) ≥ n / 2 ⟹ G 具備漢密爾頓性

Ore 定理 (1960)

如果對於每一對不相鄰的頂點 uv,我們有 deg(u) + deg(v) ≥ n,則 G 具有漢密爾頓迴圈。Ore 的條件嚴格來說比 Dirac 的更弱,因此 Ore 定理蘊含了 Dirac 定理。

∀ 不相鄰頂點 u, v: deg(u) + deg(v) ≥ n ⟹ G 具備漢密爾頓性

未能滿足 Dirac 或 Ore 條件並不代表圖形缺乏漢密爾頓迴圈 —— 許多圖形兩者都不滿足但仍包含一個(例如,一個簡單的 n-迴圈最小度數為 2,在 n 較大時遠低於 n/2)。

內部搜尋演算法

當預檢查無法確定結果時,計算機會在圖形的鄰接表示上執行回溯搜尋。關鍵策略包括:

  1. 位元遮罩訪問集。 已訪問的頂點以位元遮罩形式儲存(對於最多 20 個頂點,O(1) 快速成員測試)。
  2. Warnsdorff 啟發式。 在每次延伸時,按鄰居剩餘的未訪問度數排序嘗試(最小優先),模擬「低分叉」順序。
  3. 根節點選擇。 對於漢密爾頓 迴圈,只需要一個起始頂點(迴圈具有旋轉不變性)。對於漢密爾頓 路徑,按出度升序嘗試起點 —— 優先嘗試最稀有的位置。
  4. 步驟預算。 設有硬性上限以防止病態實例無限執行;如果預算耗盡,UI 將報告 verdict 為「逾時」。

漢密爾頓 vs 歐拉

漢密爾頓問題與歐拉問題很容易混淆 —— 它們聽起來很像,但本質上完全不同:

屬性 漢密爾頓路徑 / 迴圈 歐拉跡 / 迴圈
訪問每個… 頂點恰好一次 邊恰好一次
複雜度 NP-complete 多項式 (O(n+m))
條件 無簡單特徵描述 連通 + 所有度數為偶數 (迴圈);最多 2 個奇數度頂點 (跡)
命名自 W. R. Hamilton (1857) L. Euler (1736, 柯尼斯堡七橋)
經典範例 旅行推銷員問題, Icosian game 路線檢查, 郵差問題

支援的輸入格式

邊列表

每行一條邊,或以逗號分隔。支援的分隔符號:A-B, A B, A,B, A--B, A->B, A<-B。使用 -> 強制解釋為有向邊。

A-B, B-C, C-D, D-A, A-C (5 條邊的無向圖) A->B, B->C, C->D, D->A (有向 4-迴圈)

鄰接矩陣

0/1 值的方陣,每行一列,以空格或逗號分隔。在「矩陣標籤」欄位中提供選填標籤;否則將自動使用 A, B, C…。

0 1 1 0 1 0 1 1 1 1 0 1 0 1 1 0

如何使用此檢查器

  1. 挑選輸入格式 —— 手寫小型圖形選「邊列表」,從程式碼或教科書貼上選「鄰接矩陣」。
  2. 貼上您的圖形 到文字區域。對於矩陣輸入,可選擇提供頂點標籤。
  3. 選擇檢查項目:單次運行檢查路徑、迴圈或兩者。
  4. 選擇圖形類型 —— 「自動檢測」會根據箭頭樣式 (->) 或矩陣對稱性推斷有向性。
  5. 點擊「檢查漢密爾頓」。 結果頁面會顯示判定標題、必要條件預檢查、Dirac / Ore 充分條件測試、見證路徑(如果存在)以及互動式視覺化。
  6. 重播見證,使用「播放 / 單步」控制。觀看路徑在圖上一邊一邊地亮起。

實例演示 —— Petersen 圖

著名的 Petersen 圖(10 個頂點,15 條邊,3-正則圖)是具有漢密爾頓路徑但 沒有 漢密爾頓迴圈的教科書範例。將此內容貼到邊列表欄位並點擊檢查:

1-2, 2-3, 3-4, 4-5, 5-1, 6-8, 8-10, 10-7, 7-9, 9-6, 1-6, 2-7, 3-8, 4-9, 5-10

檢查器確認:找到漢密爾頓路徑(例如 1 — 2 — 7 — 10 — 5 — 4 — 9 — 6 — 8 — 3),但窮舉搜尋未發現閉合回到起點的方法 —— 這一結果最早在 1890 年代得到證明。

常見應用

常見問題

什麼是漢密爾頓路徑?

漢密爾頓路徑是圖中經過每個頂點恰好一次的走法。它以 William Rowan Hamilton 的名字命名,他在 1857 年研究了十二面體圖上的這個問題。判定是否存在這樣的路徑是一個 NP-complete 問題,因此目前尚無已知的演算法能在多項式時間內解決所有圖形。

漢密爾頓迴圈與漢密爾頓路徑有何不同?

漢密爾頓迴圈是一條回到起始頂點的漢密爾頓路徑,形成一個訪問每個頂點恰好一次的封閉迴圈。每個漢密爾頓迴圈都包含一條漢密爾頓路徑(只需去掉閉合邊),但反之則不然:許多圖具有漢密爾頓路徑但沒有漢密爾頓迴圈。

Dirac 定理說了什麼?

Dirac 定理(1952 年)指出,在任何頂點數 n ≥ 3 的簡單無向圖中,如果每個頂點的度數至少為 n/2,則該圖包含一個漢密爾頓迴圈。這是一個充分但非必要條件:許多未達到 Dirac 閾值的圖仍然具有漢密爾頓迴圈。

Ore 定理說了什麼?

Ore 定理(1960 年)指出,如果對於頂點數 n ≥ 3 的簡單圖中的每一對不相鄰頂點 u 和 v,其度數之和至少為 n,則該圖具有漢密爾頓迴圈。Ore 的條件比 Dirac 的更弱,因此只要 Dirac 定理適用,Ore 定理就適用。

為什麼搜尋限制在 20 個頂點?

漢密爾頓路徑和迴圈判定問題是 NP-complete。最壞情況下的執行時間隨頂點數量呈指數級增長。透過剪枝和 Warnsdorff 啟發式,本計算機可以快速處理許多多達 20 個頂點的小型圖形,但更困難的情況可能會逾時。超過 20 個頂點,您應該使用專業的求解器,如 Concorde 或整數規劃公式。

什麼是 Warnsdorff 啟發式?

Warnsdorff 規則於 1823 年針對騎士巡邏問題提出,它指出在每一步中,您應該訪問下一個具有最少剩餘未訪問鄰居的頂點。這種看似貪婪的規則在實踐中極大地剪枝了回溯樹,並且在正則圖上通常無需回溯即可找到漢密爾頓路徑。

這款工具會找出所有漢密爾頓路徑嗎?

不會。它會在存在漢密爾頓路徑或迴圈時找到單個見證路徑。計算漢密爾頓路徑的總數本身是一個 #P-complete 問題,比判定問題難得多。對於枚舉,專門的工具或整數規劃求解器更合適。

延伸閱讀

引用此內容、頁面或工具為:

"漢密爾頓路徑檢查器" 於 https://MiniWebtool.com/zh-tw/漢密爾頓路徑檢查器/,來自 MiniWebtool,https://MiniWebtool.com/

由 miniwebtool 團隊開發。更新日期:2026年4月21日

您還可以嘗試我們的 AI數學解題器 GPT,通過自然語言問答解決您的數學問題。

其他相關工具:

進階數學計算:

常用工具:

分數計算機隨機撲克手牌生成器真心話大冒險產生器標準偏差計算機 - 高精度最簡分數計算機磅轉公斤轉換器斜邊計算機百分比增加計算機相對標準偏差計算機羅馬數字轉換器毛利率計算機比例計算機MAC地址查找kg到lbs轉換器圓計算機百分比折扣計算機百分比增長率計算機kpa到psi轉換器AI內容檢測器圖片分割器質數分解計算機太陽、月亮與上升星座計算機 🌞🌙✨百分比減少計算機分數到小數計算機百分比誤差計算機年齡計算機平均值計算機迷宮產生器🎮 遊戲靈敏度轉換器隨機撲克牌產生器校正鈣計算機商和餘數計算機反向文字分數百分比轉換器百分比變化計算機HEX計算機隨機名稱生成器百分比計算機複利計算機對數計算機年份天數計算機 - 今天是今年的第幾天SRT時間偏移查找並替換文字凱薩密碼工具加價計算機坡度與傾斜度計算機調整影片速度影片轉圖片擷取器定期存款計算機樂透號碼生成器ANC計算機小數到分數計算機CAGR計算機棒球打擊率計算機二次公式計算機積分計算機線性迴歸計算機克到磅轉換器AI標點符號添加器OPS計算機比率與百分比計算機隨機錦標賽對陣生成器文字重複工具簡單利息計算機最小公倍數計算機MAC地址產生器因子計算機畢達哥拉斯定理計算機跑步配速計算機合併影片我的幸運數字是什麼隨機信用卡生成器賓果卡生成器階乘計算機隨機選擇器厘米到英尺和英寸轉換器隨機餐點產生器組合計算機psi到kpa轉換器隨機顏色生成器PSI 轉 Bar 轉換器隨機字母生成器二進製計算機音訊分割器百分比到ppm轉換器步數距離計算機小字體生成器 ⁽ᶜᵒᵖʸ ⁿ ᵖᵃˢᵗᵉ⁾圖片打碼工具汽車貸款計算機文件大小轉換器分數簡化可整除測試計算機隨機生日生成器多分數計算機影片壓縮器上壘率計算機移除標點符號線上工具弧長計算機最大公因子計算機樓梯計算機漢密爾頓路徑檢查器旅行推銷員問題求解器 (TSP)線性規劃求解器容斥原理計算機遞迴關係求解器鄰接矩陣計算機拓撲排序計算機圖著色計算機邏輯閘模擬器卡諾圖 (K-Map) 求解器布林代數化簡器分拆函數計算機數字根計算機費波那契數檢查器埃及分數計算機莫比烏斯函數計算機哥德巴赫猜想驗證器梅森質數檢查器孿生質數查找器親和數檢查器完全數檢查器模冪運算計算機重複排列計算機效果量計算機相對風險計算機勝算比計算機列聯表計算機費雪精確檢定計算機斯皮爾曼等級相關係數計算機貝塔分布計算機韋布爾分佈計算機指數分佈計算機幾何分佈計算機負二項分布計算機超幾何分布計算機F-Test/F分布計算機貝氏定理計算機特徵多項式計算機矩陣冪計算機喬列斯基分解計算機QR分解計算機矩陣對角化計算機Cramer's Rule Calculator行空間計算機零空間計算機向量夾角計算機單位向量計算機向量大小計算機向量外積計算機向量點積計算機矩陣乘法計算機逆矩陣計算機RREF計算機列最簡階梯形牛頓迭代法計算機雅可比矩陣計算機曲面積分計算機線積分計算機旋度計算機散度計算機梯度計算機多變量優化計算機微積分相關變化率求解器瞬時變化率計算機平均變化率計算機無限級數求和計算機級數收斂判定計算機冪級數計算機麥克勞林級數計算機洛必達法則計算機廣義積分計算機辛普森法則計算機梯形法則計算機黎曼和計算機參數曲線繪圖器旋轉體表面積計算機旋轉體體積計算機座標幾何距離計算機海倫公式計算機圓的切線計算機角平分線計算機內切圓計算機三角形外接圓計算機大圓距離計算機3D距離計算機環面計算機圓台計算機不規則多邊形面積計算機正多邊形計算機圓錐曲線識別器雙曲線計算機拋物線計算機二項式定理展開計算機帕斯卡三角形產生器乘積符號計算機 (Pi 記號)西格瑪求和計算機有理根定理計算機笛卡爾符號法則計算機平行線和垂直線計算機直線方程式計算機標準形式轉斜截式轉換器點斜式計算機非線性方程組求解器有理方程式求解器字母方程式求解器三角方程式求解器指數方程式求解器對數方程式求解器四次方程式計算機三次方程求解器估算計算機數字轉分數轉換器跳數產生器單位費率計算機上取整和下取整計算機絕對值計算機數列模式查找器位值圖產生器運算順序計算機PEMDAS直式加減法計算機長乘法計算機乘法表產生器🎮 遊戲貨幣換算器🎲 掉落機率計算機🎰 抽卡保底計算機⚔️ DPS計算機❄️ 雪天計算機🚚 搬家費用估算器🔍 抄襲檢測器📷 OCR / 圖片文字辨識📈 折線圖製作工具🥧 圓餅圖製作工具📊 長條圖製作工具🔊 音調產生器🖱️ 點擊計數器線上記事本⬛ 寬高比計算機🌍 碳足跡計算機👙 胸罩尺碼計算機輪胎尺寸計算機燃油費用計算機💧 露點計算機🌡️ 體感溫度計算機🌬️ 風寒指數計算機⏰ 線上鬧鐘⏰ 打卡計算機📅 日期差計算機🕐 軍事時間轉換器⏱️ 小時計算機⏱️ 線上碼錶⏱️ 倒數計時器🌐 時區轉換器地毯計算機擋土牆計算機HVAC容量計算機隔熱材料計算機鋪路石計算機鋼筋計算機木材計算機平方英尺計算機交叉相乘計算機五數概括計算機百分位數計算機正態分布計算機p值計算機比率計算機配方法計算機四捨五入計算機長除法計算機科學計算機番茄鐘學習計時器有效數字計算機考試成績計算機加權成績計算機期末成績計算機成績計算機諧振頻率計算機阻抗計算機分貝 (dB) 計算機功率因數計算機RC時間常數計算機變壓器計算機線規計算機555定時器計算機電容器計算機並聯電阻計算機分壓器計算機LED電阻計算機莫耳/克/粒子轉換器滴定計算機沸點計算機經驗式計算機百分產率計算機化學計量計算機化學方程式平衡器稀釋計算機馬力計算機扭矩計算機自由落體計算機理想氣體狀態方程計算機壓力計算機密度計算機功和功率計算機位能計算機動能計算機拋體運動計算機動量計算機速度計算機加速度計算機力計算機網紅行銷ROI計算機ROAS計算機CTR計算機社交媒體用戶名檢查器社群媒體發文時間優化工具社群媒體ROI計算機Facebook廣告費用計算機YouTube Shorts 收益計算機Twitch收益計算機YouTube觀看時間計算機Twitter/X 時間戳轉換器YouTube頻道統計TikTok收益計算機社群媒體圖片尺寸指南Instagram字體生成器Twitter/X 字元計數機YouTube留言抽選器YouTube標籤提取器YouTube縮圖下載器YouTube收益估算器隨機RPG角色生成器