Studium, Ausbildung und Beruf
 StudiumHome   FAQFAQ   RegelnRegeln   SuchenSuchen    RegistrierenRegistrieren   LoginLogin

Bäume in matlab?
Neues Thema eröffnen   Neue Antwort erstellen
Foren-Übersicht -> Informatik-Forum -> Bäume in matlab?
 
Autor Nachricht
omar82
Newbie
Benutzer-Profile anzeigen
Newbie


Anmeldungsdatum: 23.05.2009
Beiträge: 8
Wohnort: Wuppertal

BeitragVerfasst am: 02 Jun 2009 - 22:00:03    Titel: Bäume in matlab?

Hallo,

weiß jemand,wie man die Funktion von Bäume in Matlab schreiben kann?oder die Knoten und Kanten darstellen kann??
sarc
Senior Member
Benutzer-Profile anzeigen
Senior Member


Anmeldungsdatum: 21.09.2006
Beiträge: 2657

BeitragVerfasst am: 02 Jun 2009 - 22:55:58    Titel:

Prinzipiell kann man in Matlab objektorientiert programmieren. Es ist aber in gesteigertem Maße ekelhaft...

Allerdings hast du aus Matlab heraus auch Zugriff auf Java-Klassen. Vielleicht kannst du da einfach den passenden Container benutzen?
omar82
Newbie
Benutzer-Profile anzeigen
Newbie


Anmeldungsdatum: 23.05.2009
Beiträge: 8
Wohnort: Wuppertal

BeitragVerfasst am: 02 Jun 2009 - 23:07:07    Titel: Bäume in matlab?

kannst du vielleicht ein kleines Beispiel von Bäume in Matlab eingeben?
sarc
Senior Member
Benutzer-Profile anzeigen
Senior Member


Anmeldungsdatum: 21.09.2006
Beiträge: 2657

BeitragVerfasst am: 03 Jun 2009 - 09:12:36    Titel:

Wie ich bereits sagte, die Objektorientierung ist sehr eigenwillig. Da ists mit einem kleinen Beispiel nicht getan...

Ne sehr interessante andere Möglichkeit, wenn man sich die Objektorientierung sparen will, wäre übrigens, die einzelnen Knoten in ein Array zu speichern. Wurzel an Position 1, die ersten beiden Kinder an 2 und 3, usw. Man kann netterweise Formeln hinschreiben, wie sich für einen Knoten die Speicherpositionen der Kinder berechnen. Das wäre dann aber wohl deine Aufgabe, wenn du dich für diesen Weg entscheiden solltest... Wink
Armin Gibbs
Senior Member
Benutzer-Profile anzeigen
Senior Member


Anmeldungsdatum: 06.02.2008
Beiträge: 992

BeitragVerfasst am: 03 Jun 2009 - 13:14:26    Titel:

Code:
nodes = struct('weight', {}, 'incomingEdgeIndex', {}, 'outgoingEdgeIndices', {});
edges = struct('weight', {}, 'fromNodeIndex', {}, 'toNodeIndex', {});


% root anlegen
nodes(1).weight = 1;

% child1 anlegen
nodes(2).weight = 2;

% child2 anlegen
nodes(3).weight = 3;

% edges anlegen
edges(1).weight = 1;
edges(1).fromNodeIndex = 1;
edges(1).toNodeIndex = 2;

edges(2).weight = 2;
edges(2).fromNodeIndex = 1;
edges(2).toNodeIndex = 3;

% edges in nodes registrieren
nodes(1).outgoingEdgeIndices(1) = 1;
nodes(1).outgoingEdgeIndices(2) = 2;
nodes(2).incomingEdgeIndex = 1;
nodes(3).incomingEdgeIndex = 2;




% Beispiel: Alle Knoten von root ausgeben

children = nodes(1).outgoingEdgeIndices;

for i=1:ndims(children)
   
    edge = edges(children(i));
   
    childnode = nodes(edge.toNodeIndex)
   
end

Beiträge der letzten Zeit anzeigen:   
Foren-Übersicht -> Informatik-Forum -> Bäume in matlab?
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Chat :: Nachrichten:: Lexikon :: Bücher :: Impressum