Langsung ke konten utama

Praktik Struktur Data

TOPIK-TOPIK PERKULIAHAN STRUKTUR DATA

Kali ini saya akan membahas mengenai mata kuliah Praktik Struktur Data. Menurut saya, topik – topik yang perlu dipelajari selama perkuliahan, antara lain :
  • Membuat aplikasi sederhana untuk menyelesaikan permasalahan yang diberikan sesuai dengan Struktur Data yang telah ditentukan.
  • Membandingkan algoritma Struktur Data yang satu dengan yang lainnya.
  • Memilih dan mengimplementasikan suatu Struktur Data tertentu ke dalam aplikasi yang sesuai.


CONTOH PENERAPAN STRUKTUR DATA DALAM KEHIDUPAN SEHAR-HARI

Kemudian, contoh penerapan Struktur Data dalam kehidupan sehari-hari antara lain :

LIST
List merupakan sebuah kumpulan benda di mana setiap benda memiliki posisi.
Misalnya:
• Urutan angka pada keyboard komputer.
• Urutan lagu pada playlist Mp3 player, dll.

STACK
Stack adalah merupakan sebuah kumpulan benda dimana hanya benda yang baru dimasukkan yang dapat diakses atau dilihat. Stack juga merupakan perintah pengumpulan data secara linier yang disebut “last in, first out” (LIFO).
Misalnya:
• Setumpuk koran, dimana koran yang paling terakhir ditambahkan dan ditaruh di atas tumpukan yang dapat dilihat.
• Tumpukan kotak rokok, koin, buku, dll

QUEUE atau ANTRIAN
Queue atau antrian adalah sebuah kumpulan benda di mana hanya benda yang terakhir dimasukkan yang dapat diakses. Queue atau Antrian merupakan perintah pengumpulan data yang disebut “first-in, first-out”. Aplikasi ini meliputi jadwal pekerjaan dalam sebuah operasi
Misalnya:
a. Antrian printer job pada sebuah jaringan
b. Antrian nasabah pada sebuah bank
c. Antrian loket bioskop, dll

CONTOH IMPLEMENTASI STACK PADA JAVA

Contoh program implementasi Stack untuk membalikkan suatu kata.

import java.util.Scanner;
class Node {
                public char Data1;
                public Node next;
// -------------------------------------------------------------
                public Node(char dat1) {
                                Data1 = dat1;
                }
// -------------------------------------------------------------
                public void tampilNode() {
                                System.out.print(Data1 + " ");
                }
} // end class Note
////////////////////////////////////////////////////////////////
class LinkList {
                private Node first;
// -------------------------------------------------------------
                public LinkList() { // constructor
                                first = null;
                }
// -------------------------------------------------------------
                public boolean isEmpty() {
                                return (first==null);
                }
// -------------------------------------------------------------
                public void insertFirst(char dat1) {
                                Node newNode = new Node(dat1);
                                newNode.next = first;
                                first = newNode;
                }
// -------------------------------------------------------------
                public char hapusFirst() {
                                char temp = first.Data1;
                                first = first.next;
                                return temp;     
                }
// -------------------------------------------------------------
                public void tampilList() {
                                Node indek = first;
                                while(indek != null) {
                                                indek.tampilNode();
                                                indek = indek.next;
                                }
                                System.out.println("");
                }
// -------------------------------------------------------------
} // end class LinkList
////////////////////////////////////////////////////////////////
class LinkStack {
                private LinkList list;
//--------------------------------------------------------------
                public LinkStack() { // constructor
                                list = new LinkList();
                }
//--------------------------------------------------------------
                public void push(char dat1) {
                                list.insertFirst(dat1);
                }
//--------------------------------------------------------------
                public char pop() {
                                return list.hapusFirst();
                }
//--------------------------------------------------------------
                public boolean isEmpty() {
                                return ( list.isEmpty() );
                }
//--------------------------------------------------------------
                public void tampilStack() {
                                System.out.println("Jika dibalik hasilnya :");
                                System.out.print("--> ");
                                list.tampilList();
                }
//--------------------------------------------------------------
} // end class LinkStack
////////////////////////////////////////////////////////////////
class Reverse {
                public static void main(String[] args) {
                                LinkStack stack = new LinkStack();
                                System.out.println("MASUKKAN KALIMAT TANPA SPASI");
                                System.out.print("--> ");
                                Scanner input = new Scanner(System.in);
                                String kata=input.next();
                                System.out.println("");
                                for(int i=0; i<kata.length(); i++){
                                                char a = kata.charAt(i);
                                                stack.push(a);
                                }
                                stack.tampilStack();
                } // end main()
} // end class Reverse
////////////////////////////////////////////////////////////////

Sekian postingan saya kali ini. Terima Kasih.

Sumber :
http://besmart.uny.ac.id/v2/ course : Struktur Data (ADI)

Komentar

Postingan populer dari blog ini

Media Pembelajaran Kejuruan

Kali ini saya akan menjelaskan mengenai salah satu mata kuliah yaitu Media Pembelajaran Kejuruan. Menurut saya, media pembelajaran kejuruan merupakan mata kuliah yang membahas mengenai media pembelajaran untuk kegiatan belajar-mengajar akan tetapi khusus untuk kejuruan tertentu. Untuk itu, hal-hal yang ingin saya pelajari dalam mata kuliah ini antara lain : Mengetahui fungsi dari media pembelajaran dan proses komunikasi dalam pembelajaran. Dapat mengklasifikasi jenis dan karakteristik media pembelajaran beserta kelebihan dan kekurangannya. Mengetahui faktor dan pertimbangan yang mempengaruhi pemilihan media pembelajaran yang sesuai. Dapat melakukan pengembangan media pembelajaran. Demikian yang dapat saya sampaikan mengenai mata kuliah media pembelajaran kejuruan. Terima kasih.