3 public class Liste
extends Structure
{
5 private class IntNode
{
14 IntNode(int value
, IntNode nextNode
) {
19 public int getData() {
23 public void setData(int value
) {
27 public IntNode
getNext() {
31 public void setNext(IntNode nextNode
) {
37 private IntNode headNode
;
38 private int list_counter
;
45 private boolean isEmpty()
47 return getHeadNode() == null;
50 public int getSize() {
54 public void setSize(int size
) {
58 public void setHeadNode(IntNode node
) {
62 public IntNode
getHeadNode() {
66 public boolean inserer(int value
) {
67 boolean found
= false;
69 headNode
= new IntNode(value
);
72 } else if (value
== headNode
.getData()) {
76 IntNode nodeCursorNext
= headNode
.getNext();
77 while (nodeCursorNext
!= null) {
78 if (value
== nodeCursorNext
.getData()) {
82 nodeCursorNext
= nodeCursorNext
.getNext();
86 headNode
= new IntNode(value
, headNode
);
89 // Insertion in a linked list can't fail
94 public boolean supprimer(int value
) {
95 boolean deleted
= false;
98 } else if (value
== headNode
.getData()) {
99 headNode
= headNode
.getNext();
103 IntNode nodeCursor
= headNode
;
104 IntNode nodeCursorNext
= headNode
.getNext();
105 while (nodeCursorNext
!= null) {
106 if (value
== nodeCursorNext
.getData()) {
107 nodeCursor
.setNext(nodeCursorNext
.getNext());
112 nodeCursor
= nodeCursorNext
;
113 nodeCursorNext
= nodeCursorNext
.getNext();
120 public void afficher() {
121 String className
= this.getClass().getSimpleName();
122 System
.out
.println("---- " + className
+ " ----");
125 } else if (headNode
.getNext() == null) {
126 System
.out
.println("element 0 : " + headNode
.getData());
128 IntNode nodeCursor
= headNode
;
130 while (nodeCursor
.getNext() != null) {
131 System
.out
.println("element " + i
+ " : " + nodeCursor
.getData());
132 nodeCursor
= nodeCursor
.getNext();
135 System
.out
.println("element " + i
++ + " : " + nodeCursor
.getData());
139 public void compacter(int nElements
) {