【图】图的一般表示法以及其他表示法转化为一般表示法
生活随笔
收集整理的這篇文章主要介紹了
【图】图的一般表示法以及其他表示法转化为一般表示法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
寫在前面
我們知道,圖的表示法有很多,但是用多種方法來實現我們的算法,那就變的困難了,所以我們遇到圖的時候就要想到轉化為一般表示法,如果題目給的是別的表示方法,那么我們就進行轉換,將題目給的圖轉化為我們的一般圖表示法。
圖的一般表示法
// 點結構的描述 public class Node {public int value;//表示值public int in;//入度:有多少個邊指向此處public int out;//出度:有多少指出去的邊public ArrayList<Node> nexts;//直接鄰居,指向下一個的點集合public ArrayList<Edge> edges;//邊,從我出發的邊的集合//out=next.size()public Node(int value) {this.value = value;in = 0;out = 0;nexts = new ArrayList<>();edges = new ArrayList<>();} } //邊結構的描述 public class Edge {public int weight;//邊的權重public Node from;//邊的入點public Node to;//邊的出點public Edge(int weight, Node from, Node to) {this.weight = weight;this.from = from;this.to = to;} }//圖的結構 public class Graph {public HashMap<Integer, Node> nodes;//k表示編號id,Node就是實際的點public HashSet<Edge> edges;public Graph() {nodes = new HashMap<>();edges = new HashSet<>();} }轉化
例一
題目所給的圖的結構是這樣描述的
- 用二維數組來表示圖,共三個列,第一列表示邊權,第二列表示入點id,第三列表示出點id。
- [ 邊權 ,from ,to ] 三個都是int型的
鄰接矩陣轉換法
總結
以上是生活随笔為你收集整理的【图】图的一般表示法以及其他表示法转化为一般表示法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 暖暖CEO姚润昊:“公司80%都是女生,
- 下一篇: 运动目标检测(背景建模)