TS
2010-06-08, 19:48:32
abend,
ich möchte in java meine eigene binarytree klasse schreiben, rein zur übung.
In einen btree sollen objekte vom typ treenode gespeichert werden können. tnode hat dabei 3 exemplarvarialben: tnode lef, tnode right und Object value.
folglich sollen meine daten, die ich eigentlich in den baum speichern möchte im tnode vorliegen, und da tnode eine Object variable verwaltet, können natürlich alle daten gespeichert werden.
nun ist es ja so, dass binarytrees zunächst die erste variable in der wurzel speichert, alle anderen variablen werden entweder links, wenn sie vom wert her kleiner sind, als das wurzelelement, oder rechts, wenn sie größer sind als das wurzelelement gespeichert.
deshalb muss in der btree klasse eine methode vorhanden sein, welche die values der treenodes miteinander vergleicht, und zwar je nach dem, welches art von daten gespeicher sind. also bei integer variablen müssen einfach die int werte verglichen werden, und bei einem anderen object müssen nach bestimmten kriterien die eigenen werte der objekte verglichen werden, welche das auch immer sind.
wie kann ich es also schaffen, dass zwei objekte, egal von welchem typ sie sind, entweder int, object, string oder sonst irgend was, nach bestimmten kriterien miteinander verglichen werden?
ich hoffe ich habe mich verständlich ausgedrückt... :)
ich möchte in java meine eigene binarytree klasse schreiben, rein zur übung.
In einen btree sollen objekte vom typ treenode gespeichert werden können. tnode hat dabei 3 exemplarvarialben: tnode lef, tnode right und Object value.
folglich sollen meine daten, die ich eigentlich in den baum speichern möchte im tnode vorliegen, und da tnode eine Object variable verwaltet, können natürlich alle daten gespeichert werden.
nun ist es ja so, dass binarytrees zunächst die erste variable in der wurzel speichert, alle anderen variablen werden entweder links, wenn sie vom wert her kleiner sind, als das wurzelelement, oder rechts, wenn sie größer sind als das wurzelelement gespeichert.
deshalb muss in der btree klasse eine methode vorhanden sein, welche die values der treenodes miteinander vergleicht, und zwar je nach dem, welches art von daten gespeicher sind. also bei integer variablen müssen einfach die int werte verglichen werden, und bei einem anderen object müssen nach bestimmten kriterien die eigenen werte der objekte verglichen werden, welche das auch immer sind.
wie kann ich es also schaffen, dass zwei objekte, egal von welchem typ sie sind, entweder int, object, string oder sonst irgend was, nach bestimmten kriterien miteinander verglichen werden?
ich hoffe ich habe mich verständlich ausgedrückt... :)