Array, Linkedlist, Stack, Queue, Tree

ARRAY

Arrayadalah suatu tipe data terstruktur yang dapat menyimpan banyak data dengan suatu nama yang sama dan tipe data yang sama yang merupakan gabungan dari beberapa variabel sejenis serta memiliki jumlah komponen yang jumlahnya tetap. Elemen-elemen dari array tersusun secara sequential dalam memori komputer.
Array dapat diakses berdasarkan indeksnya. Indeks larik umumnya dimulai dari 0, tapi ada pula yang dimulai dari angka bukan 0. Pengaksesan larik biasanya dibuat dengan menggunakan perulangan atau looping.
Macam – Macam Array : 
  • Array Satu Dimensi
-     Array satu dimensi adalah kumpulan elemen-elemen yang identik, yang tersusun dalam satu baris. Elemen-elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh beda.
-        Bentuk Umum Array :
Nama _variabel = [nil]
Nama _variabel = Array.new(ukuran, obj)
-          Contoh Penulisan array :
A = [nil] atau b = array.new(10,nil) 
  • Array Dua Dimensi
-      Merupakan sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama dan elemen yang akan diakses melalui 2 indeks atau subskrip yaitu indeks baris dan indeks kolom.
-         Bentuk Umum Array  : 
      nama_variable = Array.new((jumlah_eleman_baris),Array.new((jumah_eleme_kolom),nil)
-         Contoh penulisan array :
Nilai=Array.new(6,Array.new(10,nil))

__________________________________________________________________________________

Linked List 
Linked List adalah salah satu bentuk struktur data, berisi kumpulan data (node) yang tersusun secara sekuensial, saling berhubungan, dinamis dan terbatas. Linked List saling terhubung dengan bantuan variabel pointer. Masing-masing data dalam Linked List disebut dengan node (simpul) yang menempati alokasi memori secara dinamis dan biasanya berupa struct yang terdiri dari beberapa field.
Jenis-jenis Linked List

1.      Singly linked list

Bila struktur data sebuah node hanya memiliki satu tautan atas node berikutnya dalam sebuah linked list, maka linked list tersebut dinamakan sebagai singly linked list.

2.      Doubly linked list

Daftar bertaut ganda dengan tiap-tiap node yang terdiri atas tiga elemen, data integer, dan dua elemen rujukan ke node sebelum serta berikutnya.

            3.      Circular linked list

Pada circular linked list, informasi rujukan pada node terakhir akan merujuk pada node pertama, dan rujukan pada node pertama akan merujuk pada node terakhir bila yang digunakan sebagai dasar implementasi adalah daftar bertaut ganda.

__________________________________________________________________________________

STACK

Kumpulan items yang teratur dimana itemsbaru akan dimasukkan dan sebuah itemsakan dikeluarkan dari satu ujung yang sama, yaitu dari TOP sebuah stack.
Ciri-ciri stack :
  • Struktur data linier dimana hanya bagian TOP-nya saja yang bisa diakses.
  • Bersifat LIFO (Last In First Out).
  • Bisa diimplementasikan menggunakan array atau Linked List.
Operasi dasar Stack :
  • Create (operator yang menunjukan stack kosong)
  • IsEmpty (operator yang menentukan sebuah stack tersebut kosong)
  • Push (operator memasukkan elemen baru ke dalam stack)
  • Pop (operator pengambilan satu elemen yang ada di dalam stack )

__________________________________________________________________________________

QUEUE
Queue atau antrian sebenarnya juga merupakan suatu list. Salah satu sifat yang membedakan queue dengan stack adalah bahwa pada queue penambahan elemen dilakukan pada salah satu ujung (ujung depan) dan pengambilan dilakukan pada ujung yang lain (ujung belakang) . Dengan demikian queue menggunakan prinsip FIFO(First In First Out), yaitu elemen yang pertama masuk akan pertama kali pula dikeluarkan.
Satu elemen dengan yang lainnya dapat diakses dengan melalui informasi NEXT. Queue banyak digunakan dalam informatika, misalnya untuk mempresentasikan antrian job yang harus ditangani oleh sebuah system operasi atau antrian dalam kehidupan sehari-hari.


__________________________________________________________________________________

TREE
Tree adalah sebuah struktur data yang secara bentuk menyerupai sebuah pohon, yang terdiri dari serangkaian node (simpul) yang saling berhubungan. Node¬node tersebut dihubungkan oleh sebuah vektor.
Setiap node dapat memiliki 0 atau lebih node child. Sebuah node yang memiliki node child disebut node parent. Sebuah node child hanya memiliki satu node parent.  node child akan digambarkan berada di bawah node parent. Node yang berada di pangkal tree disebut node root, sedangkan node yang berada paling ujung pada piramida tree disebut node leaf.
Ciri-ciri tree :
a.      Terdapat 1 node yang unik, yang tidak memiliki predecessor, yang disebut dengan root
b.      Terdapat satu atau beberapa node yang tidak memiliki successor yang disebut dengan leaf
c.       Setiap node kecuali root pasti memiliki satu predecessor
d.      Setiap node kecuali leaf pasti memiliki 1 atau lebih successor