addtion einen Wert in die Liste einzufuegen , wie ein neuer Eintrag an bliebiger Stelle in die Liste einfgefuegt wird ?

Neue Frage »

Auf diesen Beitrag antworten »
yesa addtion einen Wert in die Liste einzufuegen , wie ein neuer Eintrag an bliebiger Stelle in die Liste

Meine Frage:
also die Addition in die Liste ?
2. wie kann ich einen neuen Eintrag an belieberger Stelle in die Liste einfuege und wie viele und welche Refernzen kann ich versetzen
3. wie kann ich die Position finden, an der ich das neue Element einfuegen muss

Meine Ideen:
1.
Item head ;
public Item(E value){
this.value = value;
previous = null;
next = null;
public void add(E value) {
// TODO Auto-generated method stub
Item add = new Item(value);
if(head == null){
head = add;
return;
}
Item onther = head;
while(onther.next != null){
onther=onther.next;
}
onther.next= add;
}

2. einfuegen k = new einfugen(element,null);
if (head == null)
head = k;
else {
k.setzeNachfolger(head);
head=k;
}
}
3. keine Idee
 
Auf diesen Beitrag antworten »
eulerscheZahl

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
public class Item<E extends Comparable<E>> {
	private E value;
	private Item<E> previous;
	private Item<E> next;

	public Item(E value) {
		this.value = value;
		previous = null;
		next = null;
	}

	public void addBefore(Item<E> newItem) {
		newItem.next = this;
		newItem.previous = this.previous;
		if (this.previous != null)
			this.previous.next = newItem;
		this.previous = newItem;
	}

	// append at tail
	public void addAfter(Item<E> newItem) {
		newItem.previous = this;
		this.next = newItem;
	}

	public E getValue() {
		return value;
	}

	public Item<E> getNext() {
		return next;
	}
}

public class MyList<E extends Comparable<E>> {
	private Item<E> head;

	public void add(E value) {
		if (head == null)
			head = new Item<E>(value);
		else {
			Item<E> temp = head;
			Item<E> newItem = new Item<E>(value);
			do {
				if (value.compareTo(temp.getValue()) < 0) {
					temp.addBefore(newItem);
					if (head == temp)
						head = newItem;
					return;
				}
				if (temp.getNext() == null)
					break;
				temp = temp.getNext();
			} while (true);
			temp.addAfter(newItem);
		}
	}

	public void print() {
		Item<E> temp = head;
		while (temp != null) {
			System.out.println(temp.getValue());
			temp = temp.getNext();
		}
	}
}

public class Main {
	public static void main(String[] args) {
		MyList<Integer> list = new MyList<Integer>();
		list.add(5);
		list.add(3);
		list.add(7);
		list.add(4);
		list.print();
	}
}
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »