STACK

 

Stack

 

Dapat diartikan sebagai tumpukan, bersifat LIFO (Last In First Out) yang berarti yang terakhir masuk yang pertama keluar.

Dua variabel di dalam stack:

  • Top : menunjuk data yang paling atas
  • Max : maksimum banyak data yang dapat disimpan

stack kosong pada saat TOP = NULL

stack penuh pada saat TOP = MAX-1

Operasi pada stack :

  • push(x) : menambahkan sebuah data x di bagian atas stack
  • pop( ) : menghilangkan data paling atas di sebuah stack
  • top( ) : menunjuk data top pada stack

 

 

QUEUE

 

Data_Queue

 

Dapat diartikan sebagai antrian, bersifat FIFO (First In First Out) yang berarti yang pertama masuk yang pertama keluar.

Dua variabel dalam queue:

  • Front : bertambah pada saat data di pop
  • Rear : bertambah pada saat data di push

Operasi pada queue:

  • push(x) : menambahkan sebuah data x di belakang queue. Disebut juga sebagai enqueue
  • pop( ) : menghilangkan sebuah data di bagian depan queue. Disebut juga dequeue
  • front( ) : menunjuk data front pada queue. Disebut juga peek

 

 

INFIX, PREFIX, DAN POSTFIX

Merupakan bentuk penulisan operasi matematika. Terdiri dari operand dan operator. Lihat gambar dibawah untuk lebih jelasnya.

operandoperator

 

INFIX

OperandL Operator OperandR

X+Y

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

 

PREFIX

Scan from right to left

Operator OperandL OperandR

+XY

Contoh: +4/*6-523

 

POSTFIX

Scan from left to right

OperandL OperandR Operator

XY+

Contoh: 4652-*3/+

 

Untitled

 

Alasan dibutuhkan postfix dan prefix adalah karena postfix dan prefix tidak membutuhkan tanda kurung dan dapat mempermudah komputer untuk menyelesaikan operasi matematika nya.

 

DFS (Depth First Search)

dfs-order

Algoritma yang menyelusuri vertex secara mendalam terlebih dahulu.

Kelebihan : cepat mencapai ruang kedalaman

Kekurangan : menghabiskan waktu yang banyak jika suatu graph memiliki anak cabang yang banyak

 

BFS (Breadth First Search)

bfs-order

Algoritma yang menyelusuri secara melebar terlebih dahulu.

Kelebihan : tidak akan menemukan jalan buntu

Kekurangan : membutuhkan waktu yang lama