-class IntNode {
- private int data;
- private IntNode next;
-
- IntNode(int value) {
- setData(value);
- setNext(null);
- }
-
- IntNode(int value, IntNode nextNode) {
- setData(value);
- setNext(nextNode);
- }
-
- public int getData() {
- return data;
- }
-
- public void setData(int value) {
- data = value;
- }
-
- public IntNode getNext() {
- return next;
- }
-
- public void setNext(IntNode nextNode) {
- next = nextNode;
- }
-
-}
-
-class Liste {
- private IntNode headNode;
+public class Liste {
+ private Node<Integer> headNode;
private int list_counter;
Liste() {
private boolean isEmpty()
{
- return headNode == null;
+ return getHeadNode() == null;
}
private int getSize() {
list_counter = size;
}
- private void setHeadNode(IntNode node) {
+ private void setHeadNode(Node<Integer> node) {
headNode = node;
}
- private IntNode getHeadNode() {
+ private Node<Integer> getHeadNode() {
return headNode;
}
public void inserer(int value) {
- boolean inserted = false;
+ boolean found = false;
if (isEmpty()) {
- headNode = new IntNode(value);
+ headNode = new Node<Integer>(value);
list_counter++;
return;
- } else if (value < headNode.getData()) {
- headNode = new IntNode(value, headNode);
- list_counter++;
+ } else if (value == headNode.getData()) {
+ found = true;
return;
} else {
- IntNode nodeCursor = headNode;
- IntNode nodeCursorNext = headNode.getNext();
+ Node<Integer> nodeCursorNext = headNode.getNext();
while (nodeCursorNext != null) {
- if (value == nodeCursor.getData() || value == nodeCursorNext.getData()) {
- inserted = true;
- break;
- } else if (value > nodeCursor.getData() && value < nodeCursorNext.getData()) {
- nodeCursor.setNext(new IntNode(value, nodeCursorNext));
- inserted = true;
- list_counter++;
+ if (value == nodeCursorNext.getData()) {
+ found = true;
break;
} else {
- nodeCursor = nodeCursorNext;
nodeCursorNext = nodeCursorNext.getNext();
}
}
- if (!inserted) {
- nodeCursor.setNext(new IntNode(value));
+ if (!found) {
+ headNode = new Node<Integer>(value, headNode);
list_counter++;
}
}
deleted = true;
list_counter--;
} else {
- IntNode nodeCursor = headNode;
- IntNode nodeCursorNext = headNode.getNext();
+ Node<Integer> nodeCursor = headNode;
+ Node<Integer> nodeCursorNext = headNode.getNext();
while (nodeCursorNext != null) {
if (value == nodeCursorNext.getData()) {
nodeCursor.setNext(nodeCursorNext.getNext());
}
public void afficher() {
+ String className = this.getClass().getSimpleName();
+ int i = 0;
+ System.out.println("---- " + className + " ----");
if (isEmpty()) {
- System.out.println("Liste vide");
+ return;
} else if (headNode.getNext() == null) {
- System.out.println("Valeur du noeud 0 : " + headNode.getData());
+ System.out.println("element " + i + " : " + headNode.getData());
} else {
- IntNode nodeCursor = headNode;
- int i = 0;
- while (nodeCursor.getNext() != null) {
- System.out.println("Valeur du noeud " + i + " : " + nodeCursor.getData());
- nodeCursor = nodeCursor.getNext();
+ Node<Integer> nodeCursorNext = headNode.getNext();
+ System.out.println("element " + i + " : " + headNode.getData());
+ i++;
+ while (nodeCursorNext != null) {
+ System.out.println("element " + i + " : " + nodeCursorNext.getData());
+ nodeCursorNext = nodeCursorNext.getNext();
i++;
}
- System.out.println("Valeur du noeud " + i++ + " : " + nodeCursor.getData());
}
}