04. marts 2011 - 17:32
Der er
6 kommentarer og
1 løsning
Algoritmer og A*
Jeg sidder med en opgave indeholdende algoritmer og A*. Jeg har IKKE fat i emnet, så jeg er (næsten) totalt blank.
Der skal laves:
- En metode til at finde den korteste vej fra punkt A til punkt B
- En kantklasse, der indeholder en pris for at følge kanten
- Et gitter/net på 10*10 felter, hvor der skal findes en vej fra punkt A til punkt B udenom forhindringer
Det skal laves med A*
Er der nogen der har styr på det emne, som har tid eller lyst til at give en hånd? Jeg har intet på nuværende tidspunkt.
11. marts 2011 - 11:07
#5
Aner ikke hvad A* er.
Men shortest path fra A-B med edge beregning, uden en metode angivelse, ville jeg bare hurtigt implementere en greedy algorithm, også aflevere det.
Lidt hints til at oprette rammerne:
int[] x = new {0,1,2,4,5,6,7,8,9};
int[] y = new {0,1,2,4,5,6,7,8,9};
Point begin = new Point(0,0);
Point end = new Point(9,9);
Public Class Route
{
List<Point> route = new List<Point>
publíc void Route()
{
}
public void addPoint(Point p)
{
route.add(p);
}
public void showPath()
{
Debug.WriteLine("Path was: ");
int count = 0;
foreach(Point p in route)
{
if(count == route.Count()-1)
{
Debug.WriteLine("(" + p.x + "," + p.y + ")");
}
else
{
Debug.WriteLine("(" + p.x + "," + p.y + ") ->" );
}
}
}
}
public void calculatePath(Route result, Point begin, Point end)
{
// Implementer algoritme.
}