国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

無向圖的處理算法(二)

bluesky / 432人閱讀

摘要:在圖中,我們很自然地會問這幾個問題從一個頂點能否到達頂點以為頂點能到達的所有頂點解決能否到達問題的算法就是深度優先算法,使用深度優先算法獲得的從到的路徑的時間與路徑的長度成正比。

在圖中,我們很自然地會問這幾個問題

從一個頂點s能否到達頂點v?

以s為頂點能到達的所有頂點?

解決能否到達問題的算法就是深度優先算法,使用深度優先算法獲得的從s到v的路徑的時間與路徑的長度成正比。

package Graph;

import java.util.Stack;

//基于深度優先算法,搜索查找圖中的路徑
//解決單點路徑問題,即,從一點開始是否存在到另一個點的路徑
public class DepthFirstPaths {
    private boolean[] marked;//這個頂點調用過dfs了嗎
    private int[] edgeTo;//從起點到該點路徑上的最后一個頂點
    private final int s;//起點

    public DepthFirstPaths(Graph g,int s)
    {
        marked = new boolean[g.V()];
        edgeTo = new int[g.V()];
        this.s = s;
        dfs(g,s);
    }

    private void dfs(Graph G,int V){
        marked[V] = true;
        for(int w: G.adj(V)){
            if(!marked[w]){
                edgeTo[w] = V;//表示這條路徑上,w之前是v
                dfs(G,w);
            }
        }
    }

    public boolean hasPathTo(int V){
        return marked[V];
    }

    public Iterable pathTo(int V){
        if(!hasPathTo(V)) return null;
        Stack path = new Stack();
        for(int x = V;x != s; x = edgeTo[x])//從終點開始往上回溯
            path.push(x);
        path.push(s);
        return path;

    }
}

這樣通過調用pathTo(v)就可以知道到任意頂點v的路徑。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/64340.html

相關文章

  • 無向圖的實現和一些常用算法(一)

    摘要:無向圖的數據結構邊數邊的數目鄰接表,存儲與該節點相鄰的節點,一個鏈表數組無向圖的創建一個含有個節點但不含邊的無向圖從輸入流中讀取一幅圖返回圖中有多少個節點邊數添加一條邊節點相鄰的所有頂點對象的字符串表示實現很簡單鄰接表既然實現了圖這種數據結 無向圖的數據結構 Class Graph private final int V; 邊數 private int E; 邊的數目 privat...

    Lsnsh 評論0 收藏0
  • 無向圖的處理算法(四)連通分量

    這篇講的是連通分量,連通分量是深度優先搜索算法的一個應用。 每進行了一次dfs,就會找到一條連通分量。 定義如下的API public class CC CC(Graph g) 預處理構造函數 boolean connected(int v,in w) v和w連通嗎 int count() 改圖中的連通分量個數 int id(int v) ...

    asce1885 評論0 收藏0
  • 無向圖的處理算法(三)

    摘要:那還有一個重要的問題就是,從到是否存在一條路徑,如果有找出其中最短的那條。最短路徑問題當然這路考慮的是每條邊的都是權值為的情況。解決這個問題的算法就是廣度優先搜索算法下面給出其實現代碼,其中的使用了一個隊列用來保存需要遍歷的頂點。 上一篇講了從一個頂點到另一個頂點是否存在路徑,用的時深度優先搜索。那還有一個重要的問題就是,從s到v是否存在一條路徑,如果有找出其中最短的那條。最短路徑問題...

    JeOam 評論0 收藏0
  • 算法(第4版) Chapter 4.1 無向

    摘要:邊僅由兩個頂點連接,并且沒有方向的圖稱為無向圖。用分隔符當前為空格,也可以是分號等分隔。深度優先算法最簡搜索起點構造函數找到與起點連通的其他頂點。路徑構造函數接收一個頂點,計算到與連通的每個頂點之間的路徑。 Algorithms Fourth EditionWritten By Robert Sedgewick & Kevin WayneTranslated By 謝路云Chapter...

    kamushin233 評論0 收藏0
  • 算法第四版4.1-無向圖詳解

    摘要:樹是一副無環連通圖?;ゲ幌噙B的樹組成的集合稱為森林。表示無向圖的數據類型圖的基本操作的兩個構造,得到頂點數和邊數,增加一條邊。該方法不符合第一個條件,上百萬個頂點的圖是很常見的空間不滿足。 四種重要的圖模型: 無向圖(簡單連接) 有向圖(連接有方向性) 加權圖(連接帶有權值) 加權有向圖(連接既有方向性又帶有權值) 無向圖 定義:由一組頂點和一組能夠將兩個頂點相連的邊組成。 特殊:...

    scola666 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<