Momentan bin ich Binärbaum und ich möchte den Maximalwert daraus erhalten. Wenn man bedenkt, wie es sowohl String- als auch Int-Werte hat, ist es in alphabetischer Reihenfolge angeordnet. Alles funktioniert einwandfrei, alle Einfügungen, Suchen, Löschen usw. Vorerst müssen wir nur wissen, dass ich hier meinen Baum habe.Einen Maximalwert von einem Binärbaum erhalten
typedef struct node
{
char *name;
int count;
struct node *l, *r;
}*link;
Wie kann ich eine einfache Funktion zu machen, das findet, was die höchste ist count
im Baum. Wie ich 20 Knoten im Baum haben kann und nehme an, dass die höchste count
10 ist und es gibt 3 Knoten mit der höchsten count
. Es spielt keine Rolle, wie viele es gibt mit 10 die höchste count
, ich möchte nur die Funktion 10 zurückgeben. Eine Funktion wie.
int maxValue(link head)
{
//the help i need with
}
Ich habe Online-nachgeschlagen und versucht, einige Beispiele wie die Inorder und all die verschiedenen funtions aber die meisten von ihnen nur alle Werte von links Knoten zu dem am weitesten rechts ein, um platziert, so dass es mir wirklich half nicht finde die maximale Anzahl im Baum, weil meine Organisation nicht von der kleinsten zur größten Nummer organisiert ist.
Ich verstehe nicht - Sie überqueren nur den Baum und notieren den höchsten Wert.Oder fügen Sie einen weiteren Index hinzu, damit Sie ihn auch nach Wert sortieren können. –
Wenn es bestellt wird, gehen Sie einfach zum ganz rechten Blatt. –
Die Frage lautet: * Es ist alphabetisch geordnet *. –