Beruflich Dokumente
Kultur Dokumente
int data;
Node next;
}
class LinkedList{
Node head; //posisi awal dari linked list
Node tail;
//posisi akhir dari linked list
/**
* Fungsi untuk mengecek apakah linked list masih kosong
*/
boolean isEmpty(){
return (head==null);
}
void addFirst(Node input){
if (isEmpty()){
//Jika linked list masih kosong,
head = input;
//maka head dan tail sama dengan node input
tail = input;
}
else {
input.next = head; //Jika linked list sudah berisi,
head = input;
//maka input akan di depan dan menjadi head
}
}
void addLast(Node input){
if (isEmpty()){
//Jika linked list masih kosong,
head = input;
//maka head dan tail sama dengan node input
tail = input;
}
else {
tail.next = input; //Jika linked list sudah berisi,
tail = input; //maka input akan di belakang dan menjadi tail
}
}
void insertAfter(int key,Node input){
Node temp = head;
do {
if (temp.data == key){ //Jika data sama dengan key, maka input
input.next = temp.next; //disambung diantara temp dan
temp.next
temp.next = input;
System.out.println("Insert data is succeed.");
break; //dari temp --> temp.next menjadi :
}
//temp --> input --> temp.next
temp = temp.next;
}
while (temp!=null);
}
void insertBefore(int key,Node input){
Node temp = head;
empty!");
void removeLast(){
Node temp = head;
if (!isEmpty()){
if (tail == head){
//jika element linked list hanya 1
head = tail = null;
//maka head dan tail menjadi null
}
//sehingga linked list kosong
else {
while (temp.next != tail){
temp = temp.next; //memajukan temp hingga satu elemen
}
//sebelum tail.
temp.next = null;
//temp.next di-null,dan jadi akhir LL
tail = temp;
//tail dipindah ke temp
temp = null;
}
}
else System.out.println("Data is empty!");
}
void remove(int key){
Node temp = head;
if (!isEmpty()){
while (temp != null){
if (temp.next.data == key){