-class Pile {
- private int int_array[];
+/**
+ *
+ */
+public class Pile {
+ private int[] int_array;
private int array_size;
- private int heap_head_index;
+ private int head_index;
+ /**
+ * [Pile description]
+ * @param int size [description]
+ */
+ Pile(int size) {
+ int_array = new int[size];
+ setSize(size);
+ setHeadIndex(0);
+ }
+
+ /**
+ * set the size of the internal array
+ * @param int size the size of the array
+ */
private void setSize(int size) {
array_size = size;
}
+ /**
+ * get the size of the internal array
+ * @return the integer size of the internal array
+ */
private int getSize() {
return array_size;
}
+ /**
+ * set the stack head index
+ * @param int index the stack head index
+ */
private void setHeadIndex(int index) {
- heap_head_index = index;
+ head_index = index;
}
+ /**
+ * get the stack head current index
+ * @return the integer stack head index
+ */
private int getHeadIndex() {
- return heap_head_index;
- }
-
- Pile(int size) {
- int_array = new int[size];
- setSize(size);
- setHeadIndex(0);
+ return head_index;
}
+ /**
+ * [empiler description]
+ * @param int value [description]
+ */
public void empiler(int value) {
if (!plein()) {
- int_array[heap_head_index] = value;
- heap_head_index++;
+ int_array[head_index] = value;
+ head_index++;
} else {
System.out.println("La pile est pleine");
}
}
+ /**
+ * [depiler description]
+ * @return [description]
+ */
public int depiler() {
if (!vide()) {
- heap_head_index--;
- return int_array[heap_head_index];
+ head_index--;
+ return int_array[head_index];
} else {
return -1;
}
}
- public boolean plein() {
+ /**
+ * [plein description]
+ * @return [description]
+ */
+ private boolean plein() {
return (getHeadIndex() >= getSize());
}
- public boolean vide() {
+ /**
+ * [vide description]
+ * @return [description]
+ */
+ private boolean vide() {
return (getHeadIndex() == 0);
}
+ /**
+ * [afficher description]
+ */
public void afficher() {
- for (int i = 0; i < getSize(); i++) {
+ for (int i = 0; i < getHeadIndex(); i++) {
System.out.println("element " + i + " " + int_array[i]);
}
}
+ /**
+ * The main() function
+ * @param String[] args main() function arguments array
+ */
public static void main(String[] args) {
- Pile heap = new Pile(5);
-
- heap.empiler(3);
- heap.empiler(5);
- heap.empiler(4);
- heap.empiler(7);
- heap.empiler(8);
-
- heap.afficher();
-
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
- System.out.println("Heap head value " + heap.depiler());
- System.out.println("Heap index " + heap.getHeadIndex());
-
- heap.afficher();
+ Pile stack = new Pile(5);
+
+ stack.empiler(3);
+ stack.empiler(5);
+ stack.empiler(4);
+ stack.empiler(7);
+ stack.empiler(8);
+
+ stack.afficher();
+
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+ System.out.println("Stack head value " + stack.depiler());
+ System.out.println("Stack index " + stack.getHeadIndex());
+
+ stack.afficher();
}
}