/** * 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; } }