Ich studiere für meine cs Midterm-Prüfung für nächste Woche. Wir haben eine Probe-Zwischenprüfung erhalten und ich möchte wissen, ob ich das richtig mache.Linked List und BST Trees finden die niedrigsten
Schreiben Sie eine Methode public T lost(), die das größte Element in der Klasse zurückgibt.
public class List<T extends Comparable<T>> { private Node<T> head; // some methods here private class Node<T> { T data; Node<T> next; } }
Hier ist meine Antwort:
public T lowest() { if(head == null) return null; Node<T> pointer = head; T min = pointer.data; while(pointer != null) { if(pointer.data.compareTo(min) < 0) // { min = pointer.data; pointer = pointer.next; } } return min;
}
Schreiben Sie eine Methode public T niedrigsten(), die den niedrigsten Wert int Baum gespeichert zurückgibt.
public class BST<T extends Comparable<T>> { private Node<T> root; // some methods here private class Node<T> { T data; Node<T> left, right; } }
Hier ist meine Antwort:
public T lowest()
{
Node current = root;
while(current.left != null)
{
current = current.left;
}
return current.data;
}
Für Q2, tun Sie den niedrigsten Knotenwert im Baum oder das niedrigste Blatt im Baum finden wollen? In jedem Fall machst du es falsch. Ihr Code wird den Datenwert des linken Blattes in der Struktur zurückgeben. –
@JayeshDoolani Ich dachte, das linke Blatt hat immer den niedrigsten Wert, deshalb habe ich diesen Wert zurückgegeben – bubbles2189
ah, du hast Recht. Ich dachte, es ist ein allgemeiner Binärbaum und kein BST. In diesem Fall wird Ihr Code funktionieren –