Daftar Linear (Linier List) adalah suatu struktur data yang merupakan himpunan
terurut dari satuan data atau dari record.
Elemen yang terdapat dalam daftar disebut simpul / node.
Daftar disebut Linier karena elemen nampak seperti baris , bahwa setiap simpul
(kecuali simpul pertama dan terakhir) selalu memiliki elemen penerus langsung
(suksesor) dan elemen pendahulu langsung (predesor).
Didefinisikan suatu Linier List A yang terdiri dari T buah elemen maka
notasinya :
A = [A1, A2, A3 ,..., AT]
Jika T = 0 maka A dikatakan sebagai Null List (List Hampa)
Suatu elemen dapat dihapus (delete) dari sembarang posisi linier list, dan suatu
elemen baru dapat pula disisipkan (insertion) sebagai anggota list pada posisi
sembarang.
Suatu linier list dapat berkurang atau bertambah setiap saat.
Contoh : File merupakan linier list yang elemen-elemennya berupa record.
STACK (TUMPUKAN)
Stack adalah suatu bentuk khusus dari linier list dimana proses penyisipan atau
penghapusan elemen-elemennya hanya dapat dilakukan pada satu posisi saja
yaitu pada posisi akhir file.
Posisi ini disebut Puncak atau TOP dari suatu Stack.
* Elemen teratas (puncak) dari stack dinotasikan sebagai TOP(S)
Untuk Stack S, dimana S = [S1, S2, S3, ..., ST], maka TOP(S) = ST
* Jumlah elemen-elemen di dalam stack dinotasikan sebagai NOEL(S)
Untuk stack diatas NOEL(S) = T
NOEL(S) menghasilkan nilai integer
Stack mempunyai sifat LIFO (Last In First Out) atau Terakhir Masuk
Pertama Keluar.
2. ISEMPTY(S)
Operator unruk menentukan apakah suatu stack S hampa atau tidak
Operandnya adalah data bertipe stack
Hasilnya merupakan data bertipe Boolean
3. PUSH(elemen,stack)
Operator menambahkan satu satu elemen ke dalam stack
4. POP(S)
Operator untuk mengeluarkan satu elemen dari stack
APLIKASI STACK
Digunakan untuk menyelesaikan berbagai macam masalah
Misal : kompiler, sistem operasi, program aplikasi.
Contohnya:
Matching Parentheses ( Penjodohan Tanda Kurung)
Proses dilakukan kompiler untuk memeriksa tanda kurung yang terdapat pada
suatu ekspresi artimatika.
NOTASI POSTFIX
Output
Hasilnya :