CCK1DAB4 - 04 - Double Linked List
CCK1DAB4 - 04 - Double Linked List
Identitas
Kajian
Topik
1. Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to Algorithms
Third Edition. Cambridge: The MIT Press.
2. Sedgewick, R. (2002). Algorithm in Java: parts 1-4 Third Edition. Boston: Pearson Education,
Inc.
3. P. Deitel and H. Deitel, Java How To Program 9th Edition, Prentice Hall, 2011.
4. Poo, Danny, Derek Kiong, and Swarnalatha Ashok. Object-Oriented Programming and Java,
2nd Edition. Springer, 2010.
5. Wu, C. Thomas. An Introduction to Object-Oriented Programming with Java. McGraw-Hill,
2009.
Kompetensi Utama
1. Jurnal 60%
2. Tugas Akhir 40%
Pengumpulan
Kumpulkan jawaban dari Jurnal tembimbing dan jurnal mandiri pada LMS yang telah
disediakan
Jurnal Terbimbing
Lengkapi kode program berikut untuk menyusun sebuah program untuk mengelola data dengan
menggunakan Double linked list
import java.io.*;
import java.util.Scanner;
class Node {
int data;
Node next;
Node prev;
Node(int d) {
data = d;
next = null;
prev = null;
}
}
/* Insert last */
public void insertEnd(int data) {
Node nn = new Node(data);
if (tail == null) {
head = tail = nn;
}
else {
tail.next = _________;
nn.prev = _________;
tail = _________;
}
System.out.println("Node baru "+data+" diposisi belakang");
}
/* Insert First */
public void insertFirst(int data) {
Node nn = new Node(data);
if (head == null) {
head = tail = nn;
}
else {
head.prev = _________;
nn.next = _________;
head = _________;
}
System.out.println("Node baru "+data+" diposisi depan");
}
/* Insert sorted*/
public void insertSorted(int data) {
Node newNode = new Node(data);
if (current.prev != null) {
current.prev.next = newNode;
}
current.prev = _________;
System.out.println("Node baru "+data+" di tengah");
}
if (current.prev != null) {
current.prev.next = current.next;
}
}
void runThis(){
//INSERT BIASA
/*
insertFirst(1);
insertEnd(5);
insertEnd(3);
insertFirst(2);
insertFirst(7);
insertEnd(6);
insertFirst(9);
insertEnd(8);
printListBackward();
printListForward();
//INSERT SORTEd
insertSorted(1);
insertSorted(5);
insertSorted(3);
insertSorted(2);
insertSorted(7);
insertSorted(6);
insertSorted(9);
insertSorted(8);
printListBackward();
printListForward();
*/
delete(6);
printList();
delete(1);
printList();
delete(9);
}
}
Jurnal Mandiri
Modifikasi program diatas, sehingga data yang dikelola bukan dalam bentuk data Integer saja,
namun untuk mengelola kelas berikut ini
class Barang{
private int id;
private String nama;
private int stok;