脚踏实地-算法与数据结构-图

树和图都有点难,以后慢慢填充

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 
 6 namespace 源代码
 7 {
 8     /// <summary>
 9     /// 图可以有几种方法表示
10     /// 1 邻接矩阵
11     /// 2  临界表
12     /// 
13     /// 临街矩阵用一个一位数组存放所有的节点的信息
14     /// 然后用一个二维数据存放,任意两个节点直接的边和权值的信息
15     /// 不为零表示有边相连,值的大小表示两个节点之间的权值
16     /// </summary>
17     class Graph
18     {
19 
20         /// <summary>
21         /// 顶点信息,只有一个数值即可
22         /// </summary>
23         class shuzu
24         {
25             public int data;
26             public shuzu(int value)
27             {
28                 data = value;
29             }
30         }
31         class Tshuzu
32         {
33             public shuzu[] a;//第一个数组 
34             public int[][] m;//存放临接边的那个二维数组
35         }
36 
37         /// <summary>
38         /// 临界表的表示方法
39         /// 类似前面的多重链表,用一个数组装入所有节点
40         /// 节点信息包括
41         /// 1 在即的数据
42         /// 2 指向一个表示自己连接其他节点的链域
43         /// 
44         /// 链域的表示方法是,第一个元素表示该节点在数组中的索引位置
45         /// 第二个元素表示 指向下一个链域,直到表示完所有与数组元素
46         /// 相连的节点信息了。就可以结束了。
47         /// </summary>
48         class Linjieyu
49         {
50 
51             public int valule;
52             public lianjieyunext next;
53             public Linjieyu()
54             {
55  
56             }
57             public class lianjieyunext
58             {
59                 public int pisition;//表示 该节点在数组链表中的位置
60                 public lianjieyunext next;//指向下一个 连接点 
61             }
62         }
63         /// <summary>
64         /// 对图的遍历有两种方法
65         /// 1 深度优先算法
66         /// 先遍历  与自己相连的所有节点中的一个,然后在遍历与这个相连的所有节点
67         /// 中的一个,直到全部都遍历了
68         ///  用堆栈的方式
69         ///  
70         /// 2 广度优先算法
71         /// 先一个个遍历完所有与该节点相邻的节点,在遍历与那些节点相连的节点
72         /// 慢点理解  总能看懂的
73         /// 用队列的方式实现
74         /// </summary>
75         class bianl
76         {
77  
78         }
79         /// <summary>
80         /// 求任意两个节点中的最短路径的算法  看的挺难得啊
81         /// 
82         /// 能不能先遍历所有的路径,然后一个个的一算 不就行了么?
83         /// </summary>
84         class dijkstra
85         {
86  
87         }
88     }
89 }
posted @ 2012-09-28 11:21  忧悦  阅读(133)  评论(0)    收藏  举报