PDA

View Full Version : پیاده سازی گراف ها توسط ماتریس مجاورت



kianezhad
جمعه 27 بهمن 1391, 10:18 صبح
سلام به همه دوستان عزیز
دارم رو یه برنامه شبیه سازی شبکه های مش کار میکنم . مشکلم اینه که چطور رابطه های گراف ها رو تو ماتریس قرار بدم . مثلا اگه گراف A با گراف D رابطه داره باید درایه ی
matrix[A,D]=true باشه میخواستم بدونم چطور درایه های ماتریس رو با حروف نامگذاری کنم که بتونم از طریق حروف ماتریس رو پیمایش کنم.
سوال دوم این که کلاس نود A رو میزارم ببینید اگه بهینه تر میشه لطفا راهنمایی کنین. این کد ها برای تمام نود ها یکی هست

using System;
using System.Collections.Generic;
using System.Text;

namespace MaleziaProject
{
class Node1
{
Form1 f1 = new Form1();
int i = 0;
public List<string> Nodelen1 = new List<string>();
public List<string> Neighbor1 = new List<string>();
Int32 pow;
Int32 sqrt;
public int insert(Int32 p1, Int32 p2, string ch, Int32 coordinate1, Int32 coodinate2)
{
if (!Neighbor1.Contains(ch))
{
pow = Convert.ToInt32(Math.Pow(p1 - coordinate1, 2) + Math.Pow(p2 - coodinate2, 2));
sqrt = Convert.ToInt32(Math.Sqrt(pow));

if ((sqrt <= 100) && (sqrt != 0))
{

Nodelen1.Add(ch);
Nodelen1.Add(sqrt.ToString());

////////////////Neighbor//////////////////
Neighbor1.Add(ch);
Neighbor1.Add(coordinate1.ToString());
Neighbor1.Add(coodinate2.ToString());

///////////////Relation////////////////
//f1.relation[1, 1] = true;
//i++;
}
}

return 0;
}

}
}