www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Matlab" - Tiefen und Breitensuche
Tiefen und Breitensuche < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Tiefen und Breitensuche: Idee
Status: (Frage) überfällig Status 
Datum: 10:36 Mo 01.09.2008
Autor: yuffie

Aufgabe
Also ich habe ein Programm geschrieben, wo ich meine Daten einlese und auch als Graph ausgebe. Nun habe ich das Problem, das mir die Nachbarknoten fehlen.  

Irgendwo ist in dem Programm der Wurm drin, oder ich habe einen Denkfehlen. Ich habe eine Musterlösung, für die Tiefen und Breitensuche, diese würde ich gerne benutzen.
Hier meine Programme
[a]Datei-Anhang

[a]Datei-Anhang

Dateianhänge:
Anhang Nr. 1 (Typ: m) [nicht öffentlich]
Anhang Nr. 2 (Typ: m) [nicht öffentlich]
Anhang Nr. 3 (Typ: txt) [nicht öffentlich]
        
Bezug
Tiefen und Breitensuche: Fälligkeit abgelaufen
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:24 Mi 03.09.2008
Autor: matux

$MATUXTEXT(ueberfaellige_frage)
Bezug
        
Bezug
Tiefen und Breitensuche: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 16:25 Do 04.09.2008
Autor: Martin243

Hallo,

ich glaube, ich habe deinen Denkfehler entdeckt: Die Angaben in der Datei sollten doch die Knoten und Kanten darstellen und nicht die Koordinaten (ein reiner Graph hat keine Koordinaten).
Also habe ich dein Skript mal vereinfacht zu:

E_directed=load('Daten1.txt');
E_undirected=unique(sort(E_directed,2),'rows');
N=max(max(E_directed));

Graph=struct();
for ii=1:N,
Graph(ii).Name=sprintf('%g', ii);
Graph(ii).x=rand;
Graph(ii).y=rand;
Graph(ii).NachbarnID=E_directed(E_directed(:, 1)==ii, 2)';
Graph(ii).Nachbarn=char(Graph(ii).NachbarnID + 64); %irgendwie überflüssig...
end;

%plot des Graphen
fh1=figure(1);
clf;
hold on;
plot([Graph.x]',[Graph.y]','o');
plot([Graph(E_directed(:, 1)).x ; Graph(E_directed(:, 2)).x], ...
[Graph(E_directed(:, 1)).y ; Graph(E_directed(:, 2)).y], 'k-')
hold off;


Und schon funktioniert die Breitensuche.

Gruß
Martin

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]