簡體   English   中英

在 Java 中實現鄰接矩陣

[英]Implementing an Adjacency Matrix in Java

我的任務是創建一個 class 'GraphOfCity' 運行並解釋下面包含的驅動程序代碼中的方法。

每次我在 GraphOfCity 上取得進展時,我最終都會做錯事並最終回到原點。

我創建了一個 class 'Graph' 作為占位符,並且 class GraphOfCity 擴展了 Graph。 這大約是我所得到的。 我相信我需要使用鄰接矩陣來執行所有操作。

GraphOfCity 需要包含的方法:

獲取大小()

獲取鄰居()

獲取學位()

是空的()

添加頂點()

加邊()

printEdges()

打印頂點()

刪除邊緣()

我已經嘗試了幾個小時,但沒有取得任何進展,提前非常感謝!

驅動程序代碼:

public class testcode01 {

public static void main(String args[])
{


    Graph graph01 = new GraphOfCity();

    String[] city = {"Little Rock", "Fayetteville", "Bentonville", "Fort Smith", "Harrison"};
    int[][] distance =
            {
                    {0, 92, 106, 136, 67},
                    {92, 0, 80, 120, 152},
                    {106, 80, 0, 209, 175},
                    {136, 120, 209, 0, 95},
                    {67, 152, 175, 95, 0}
            };
    Graph graph02 = new GraphOfCity(city, distance);

    graph01.getSize();
    graph02.getSize();


    graph01.getNeighbors("Fayetteville");
    graph02.getNeighbors("Fayetteville");


    graph01.getDegree("Fayetteville");
    graph02.getDegree("Fayetteville");

    graph01.isEmpty();
    graph02.isEmpty();


    graph01.addVertex("Little Rock");
    graph01.addVertex("Fayetteville");
    graph01.addVertex("Bentonville");
    graph01.addEdge("Little Rock", "Fayetteville", 45);
    graph01.addEdge("Little Rock", "Bentonville", 142);
    graph01.addEdge("Fayetteville", "Bentonville", 73);


    graph01.printEdges();
    graph01.printVertices();

    graph02.printEdges();
    graph02.printVertices();

    graph01.deleteEdge("Fayetteville", "Bentonville");
    graph01.deleteEdge("Fayetteville", "Bentonville");


    graph02.deleteEdge("Fayetteville", "Bentonville");
    graph02.deleteEdge("Fayetteville", "Bentonville");

}

}

如果沒有您的Graph class 的代碼,我們將無從得知。 你在哪里卡住?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM