Recent Posts
Java | 11 sec ago
Java 5 | 14 sec ago
None | 18 sec ago
C# | 44 sec ago
Oberon 2 | 53 sec ago
None | 57 sec ago
None | 57 sec ago
NullSoft Installer | 1 min ago
None | 1 min ago
JavaScript | 1 min ago
Sitereport
Find cool info about any domain on the internet?
visit sitereport
Free Subdomains
Want a pastebin.com sub-domain for your community?
learn more...
What is pastebin?
Pastebin is a website that hosts all your text & code on dedicated servers for easy sharing.
learn more...
Learn a little bit about the new Pastebin.com on our help page. hide message
By Anonymous on the 9th of Feb 2010 10:02:56 PM Download | Raw | Embed | Report
  1. Aufgabe 1:
  2.         a) n log n
  3.         b) n²
  4.         c) n²
  5.         d) n² (da auch Quicksort basiert)
  6.         e)      15      2       43      17      4       8       47
  7.                 SW: 5
  8.                 8       2       43      17      4       15      47
  9.                 SW: 3
  10.                 8       2       15      17      4       43      47
  11.                 SW: 1
  12.                 2       4       8       15      17      43      47
  13.         f) Formel (3*i)+1, Start bei 1, i vorheriger Wert -->   1,3,13,40,(121). 121 ist schon zu groß.
  14.        
  15. Aufgabe 2:
  16.         a) Maximale Abstand der Knoten bis zur Wurzel.
  17.         Hat man einen Baum mit einem Knoten dann ist die Tiefe 1,
  18.         hat man zwei Knoten, so ist die Tiefe 2.
  19.         Hat man einen Baum mit 5 Ebenen (d.h. Ebene 0 ist die Wurzel), so ist die Tiefe 6!
  20.         Tiefe = Anzahl aller Knoten incl. Wurzel auf dem maximalen Weg.
  21.        
  22.         b)
  23.         public int depth() {
  24.                 return depth(root);
  25.         }
  26.  
  27.         public int depth(TreeNode<E> node) {
  28.                 int linkeTiefe = 0;
  29.                 int rechteTiefe = 0;
  30.  
  31.                 if (node.left != null) {
  32.                         linkeTiefe = depth(node.left);
  33.                 }
  34.                 if (node.right != null) {
  35.                         rechteTiefe = depth(node.right);
  36.                 }
  37.                 if (linkeTiefe >= rechteTiefe) {
  38.                         return ++linkeTiefe;
  39.                 } else {
  40.                         return ++rechteTiefe;
  41.                 }
  42.         }
  43.        
  44. Aufgabe 3:
  45.         a) Der Baum muss 10 Ebenen haben, da 2^10=1024 > 1000. 10 Ebenen bedeutet eine Tiefe von 11.
  46.         b) Tiefe 5 bedeutet, das der Baum 4 Ebenen hat -> (2^4)-1 = 15 Werte.
  47.         c) Da die Werte absteigend eingefügt werden, degeneriert der Baum zu einer Liste, die von der Wurzel aus
  48.         immer nach links wächst. Dieser "Baum" hätte eine Tiefe von 1000.
  49.         d) Strategie: sich einen vollständigen binären Baum mit leeren Knoten aufmalen
  50.         und dort dann z.B. den rechten Teilbaum abdecken. Jetzt sieht man nur noch die Wurzel und den linken Teilbaum.
  51.         Zählt man nun die Anzahl der Knoten im linken Teilbaum, so erhält man in diesem Beispiel 7 Knoten.
  52.         Jetzt weiß man, dass in die Wurzel der Wert aus der einzufügenden Menge muss, für den es 7 kleinere Werte gibt.
  53.         Im Beispiel wäre das die 8.
  54.         Lösung: 8|4|12|2|6|10|13|1|3|5|7|9|11
  55.         e) Der symmetrische Nachfolger der 8 ist die 9
  56.                 Man ersetzt die 8 durch die 9. Der Baum ist nun nicht mehr vollständig, sonder nur noch voll
  57.                
  58. Aufgabe 4:
  59.         a) Die Methode genügt den Bedingung nicht. Durch die Verwendung der Randomfunktion kommt, wenn man das gleiche
  60.         Objekt zweimal hasht, jeweils ein andere Hashwert heraus. Bei im SInne von equals gleichen Objekten kann nur durch
  61.         Zufall der selbe Hashwert herauskommen. --> totaler Bullshit die Hashfunktion
  62.         b) HashSet<Person> set = new HashSet<Person>();
  63.                 for (Person p : typen) {
  64.                         if (!set.contains(p)) {
  65.                                 set.add(p);
  66.                         }
  67.                 }
  68.                
  69.         c)      Person donald = new Person();
  70.                 donald.fname="Donald";
  71.                 donald.lname="Duck"
  72.                 if (set.contains(donald)) {
  73.                         System.out.println("Donald ist drin");
  74.                 } else {
  75.                         System.out.println("Donald ist nicht drin");
  76.                 }
  77.                
  78.                 Ich erwarte, dass Donald nicht im Hashset ist? oO
  79.        
  80.         d)public int hashCode() {
  81.                 return fname.hashCode()+lname.hashCode();
  82.         }
Submit a correction or amendment below. Make A New Post
To highlight particular lines, prefix each line with @h@
Syntax highlighting:
Post expiration:
Post exposure:
Name / Title:
Email: