日期:2014-05-18 浏览次数:21077 次
using System;
using System.Collections;
using System.Text;
namespace Greedy
{
class Marx
{
private int[] distance;
private int row;
private ArrayList ways = new ArrayList();
public Marx(int n,params int[] d)
{
this.row = n;
distance = new int[row * row];
for (int i = 0; i < row * row; i++)
{
this.distance[i] = d[i];
}
for (int i = 0; i < this.row; i++) //有row个点,则从中心到各点的路有row-1条
{
ArrayList w = new ArrayList();
int j = 0;
w.Add(j);
ways.Add(w);
}
}
//------------------------------
public void Find_way()
{
ArrayList S = new ArrayList(1);
ArrayList Sr = new ArrayList(1);
int []Indexof_distance=new int[this.row];
for(int i=0; i < row; i++)
{
Indexof_distance[i]=i;
}
S.Add( Indexof_distance[0] );
for (int i = 0; i < this.row; i++)
{
Sr.Add( Indexof_distance[i] );
}
Sr.RemoveAt(0);
int[] D = new int[this.row]; //存放中心点到每个点的距离
//---------------以上已经初始化了,S和Sr(里边放的都是点的编号)------------------
intEnd Fu