08.12.2015, 23:58 |
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 |
10.12.2015, 07:07 |
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();
}
} |
|
|