diff --git a/Menge.java b/Menge.java new file mode 100644 index 0000000..d3499f3 --- /dev/null +++ b/Menge.java @@ -0,0 +1,80 @@ + +/** + * Beschreiben Sie hier die Klasse Menge. + * + * @author (Ihr Name) + * @version (eine Versionsnummer oder ein Datum) + */ +public class Menge +{ + public Node first; + public Menge(){ + } + +public boolean contains(T n){ + Node current = first; + while (current != null){ + if(current.wert == n){ + return true; + } + + } + return false; + } + public void add (T neu) { + Node n = new Node(neu);//Neue Node mit Zahl "neu " anlegen + + if(contains(neu) == false){//Überprüfe ob die liste leer ist + if(first == null){ + //setze neue node als erster Eintrag + first = n; + } + else { + Node current2 = first; + + while(current2.next != null){ + current2 = current2.next; + } + current2.setNext(n); + } + + //current ist jetzt der letzte Eintrag + //setze neue Node als Nachfolger von bisher letztem Eintrag + } +} + +public void remove(T neu){ + Node n = new Node(neu); + Node current = first; +while(current.next.wert != n){ +current = current.next; +} +current.next = current.next.next; +} +public Menge intersection(Menge s){ +Menge neu = new Menge(); +Node current = first; +while(current != null){ +current = current.next; +if(s.contains(current.wert) == true){ +neu.add(current.wert); + +} +} +return neu; +} +public Menge union(Menge s){ +Menge neu = new Menge(); +Node current = first; +while(current != null){ +neu.add(current.wert); +current = current.next; +} +Node current2 = first; +while(current != null){ +neu.add(current2.wert); +current = current.next; +} +return neu; +} +} diff --git a/Queue.java b/Queue.java index e179f65..d482fe9 100644 --- a/Queue.java +++ b/Queue.java @@ -18,12 +18,12 @@ public class Queue return false; } public void enqueue (T neu) { - Node n = new Node(neu);//Neue Node mit Zahl "neu " anlegen + Node r = new Node(neu);//Neue Node mit Zahl "neu " anlegen //Überprüfe ob die liste leer ist if(first == null){ //setze neue node als erster Eintrag - first = n; + first = r; } else { Node current = first; @@ -31,7 +31,7 @@ public class Queue while(current.next != null){ current = current.next; } - current.setNext(n); + current.setNext(r); } //current ist jetzt der letzte Eintrag