Selasa, 22 Maret 2016

Data Structure Pertemuan 03

Di dalam Struktur data berhubungan dengan Linked List dan di Linked List tersebut terdapat istilah Stack dan Queue . Materi tersebut sudah saya jelaskan di pertemuan kemarin Pertemuan 1 . Nah, sekarang kita kembali lagi ke Linked List. Di dalam Linked List Presentation terdapat Push , Pop , Top/Peek . Mari kita bahas satu persatu.

Push / Enstack / Enqueue

Push adalah suatu representasi dari Linked List untuk menambah node di awal / di akhir . Biasa ita menyebut Push Head untuk diawal , Push Tail untuk diakhir , dan Push Mid untuk di Tengah , tetapi untuk Push Mid biasa di pakai di Double Linked List , karena jika dipakai di Single Linked List akan lebih rumit .

Pop / Destack / Dequeue

Pop adalah suatu representasi dari Linked List untuk menghapus node di awal / di akhir . Biasa ita menyebut Pop Head untuk diawal , Pop Tail untuk diakhir , dan Pop Mid untuk di Tengah.

Top / Peek

Top adalah suatu representasi dari Linked List yang digunakan untuk menunjukan node yang sedang ditunjuk sekarang .

Array Presentation

Seperti array biasa , dimana tempat dipesan langsung 1 blok dan random
Contoh:
N = 5
Top = -1
Top






-1
0
1
2
3
4
Index
Kita bias memakai rumus :
Top + 1 >= 5
Top akan terus berpindah selama Top >=5
Saat Top = 5 , Top akan berhenti , dan menunjukan jika Array sudah penuh

Karena Array ini merupakan representasi dari stack , ada suatu hal yang membuat tidak selamanya data yang terakhir masuk akan pertama keluar . Jika ada suatu hal yang darurat, ada saatnya jika yang pertama masuk akan pertama keluar . Maka dari itu , ada yang namanya Priority Queue

Dan ada yang namanya Circular Queue, terjadi saat Top sudah mencapai akhir dan bisa kembali ke awal . Rumus yang dipakai adalah (Top + 1 % Max).

Application

Terdapat 3 bentuk :
1.Infix , berbentuk seperti matematika biasa
2.Prefix, berbentuk operation operandLeft OperandRight
3.Postfix  , berbentuk operandLeft OperandRight operation

Contoh :
Infix : 4 + 6 * (5-2)/3
Prefix : +4/*6-523

Postfix : 4652-3*/+

Tidak ada komentar:

Posting Komentar