[SOLVED] CS Java compiler Programmierung Generics und Graphen Goedicke

$25

File Name: CS_Java_compiler_Programmierung_Generics_und_Graphen_Goedicke.zip
File Size: 574.62 KB

5/5 - (1 vote)

Programmierung Generics und Graphen Goedicke
Programmierung: Ubungsblatt 12 Generics und Graphen
Aufgabe 1
1.
Generics dienen als Platzhalter, die spater gefullt werden konnen. Sie bieten die Moglichkeit zur Konstruktion wiederverwendbarer und typensicherer Datenstrukturen.
2.
Ein Vorteil von spezifischen Datentypen gegenuber der Verwendung von raw type ist zum einen, dass es lesbarer ist, da ersichtlich ist, was in einer Liste erhalten ist und zum anderen, dass auf Typecast verzichten kann, da Compiler der Objekttyp bereits bekannt ist.
3.
Beim Durchlaufen darf die Liste nicht verandert werden, v. a. durch Loschung.
4.
Ein Zyklus in einem Graph ist der Pfad von einem Knoten zu sich selbst, im Zweifel ein Kreis uber andere Knoten, sodass man ihn jederzeit durchlaufen konnte.
Aufgabe 2
Rest aus Ubung 11 nehmen
public enum Genre {
ACTION, DRAMA, FANTASY, HORROR, ROMANCE, SCIFI, THRILLER, WESTERN }
import java.util.Iterator;
class ListIterator implements Iterator {
Node current;
// Zum Start sollte current der Head der Liste zugewiesen werden
public ListIterator(UnsereListe unsereListe) { current = unsereListe.getHead();
}
@Override
public boolean hasNext() { if (current != null)
return true; return false;
}
@Override
public T next() {
T nutzlast = current.getPayload(); current = current.getNext();
return (nutzlast); }
}
public class Movie implements Comparable { private int year;
private Genre genre;
Seite 1 von 3

Programmierung Generics und Graphen Goedicke
private String name;
public Movie(int year, Genre genre, String name) { this.year = year;
this.genre = genre;
this.name = name;
}
public String getName() { return name;
}
public int getYear() { return year;
}
public Genre getGenre() { return genre;
}
@Override
public int compareTo(Movie o) {
if (this.year < o.year) { return -1;}if (this.year > o.year) {
return 1; }
int value = this.genre.compareTo(o.genre); if (value != 0) {
return value; }
return this.name.compareTo(o.name); }
}
public class Node {
Node next;
// Node previous;
T payload;
public Node(T payload) { this.payload = payload;
}
public Node getNext() { return this.next;
}
public void setNext(Node next) { this.next = next;
}
/* public Node getPrevious() {
return this.previous;
}
public void setPrevious(Node previous) {
this.previous = previous;
} */
public T getPayload() { return this.payload;
}
Seite 2 von 3

Programmierung
Generics und Graphen
Goedicke
public void setPayload() { this.payload = payload;
} }
import java.util.Iterator;
class UnsereListe implements Iterable {
Node head, tail;
public void add (T nutzlast) { Node node =new Node<>(nutzlast); if(head==null) {
tail=node;
head=node; }
else { tail.setNext(node); tail = node;
} }
public Iterator iterator() {
return new ListIterator (this); }
public Node getHead() { return head;
}
public Node getTail() { return tail;
} }
Seite 3 von 3
Powered by TCPDF (www.tcpdf.org)

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Shopping Cart
[SOLVED] CS Java compiler Programmierung Generics und Graphen Goedicke
$25