• 数据结构之图


    图就是顶点和边的集合。通常用邻接表(邻接链)表示。
    线性主要从查找和删除上初步接触差异和效率。
    树主要概念在于递归,抽象建模。
    而图在抽象建模的层次上更进一层,主要是抓住图的多对多的根本特征,把多点看成一点,把新入点的边算进来,算成一个超级大点。
    刚开始会不容易懂。但是明白之后,比特殊的树简单多了。
    package com.linson.datastrcture;
    
    import java.util.ArrayList;
    import java.util.List;
    
    
    
    //图就是顶点和边的集合。
    //线性主要从查找和删除上初步接触差异和效率。
    //树主要概念在于递归,抽象建模。
    //而图在抽象建模的层次上更进一层,主要是抓住图的多对多的根本特征,把多点看成一点,把新入点的边算进来。
    public class MyLinkGraph<T>
    {
        //顶点
        public static class MyVertex<T>
        {
            public T mData;
            public MyEdge<T> mNextEdge;
            public Integer externInfo;//扩展字段:存储动态权重。
            public List<MyVertex<T>> path;//扩展字段:存储临时最短路径
            public MyVertex()
            {
                mData=null;
                mNextEdge=null;
                externInfo=Integer.MAX_VALUE;
                path=new ArrayList<MyVertex<T>>();
            }
            public MyVertex(T value,MyEdge<T> next)
            {
                mData=value;
                mNextEdge=next;
                externInfo=Integer.MAX_VALUE;
                path=new ArrayList<MyVertex<T>>();
            }
        }
        
        //
        public static class MyEdge<T>
        {
            public MyVertex<T> mEndNode;
            public Integer mWeight;
            public MyEdge<T> mOtherEdge;//注意这里是另一条边,意思是从固定点开始的所有边。而不是一条连一条的边。
            
            public MyEdge(Integer _weight,MyEdge<T> next,MyVertex<T> EndNode)
            {
                mEndNode=EndNode;
                mWeight=_weight;
                mOtherEdge=next;
            }
        }
        
        public MyLinkGraph()
        {}
        
        @SuppressWarnings("unchecked")
        public MyLinkGraph(int vetexSum)
        {
            mVertexs= new MyVertex[vetexSum];
        }
        
        public MyVertex<T>[] mVertexs=null;
    }
  • 相关阅读:
    MFC工作者线程
    【转】水煮TCPMP
    TCPMP的ARM编译器问题
    奇怪的链接警告-ole32.lib
    Stack overflow错误的一个原因
    旋转wince的桌面的函数
    ASNI to Unicode 转换与系统语言的问题
    WinCE 驱动开发问题精华集锦
    【转】OAL之系统时钟
    【转】蓝牙技术及其系统原理
  • 原文地址:https://www.cnblogs.com/lsfv/p/10198537.html
Copyright © 2020-2023  润新知