Apa saja yang saya pelajari dalam f2f data structure akhir- akhir ini?
1.Linked list
2.Stack dan queue
1.LINKED LIST
linked list adalah sekumpulan elemen bertipe sama, yang mempunyai keterurutan tertentu, yang setiap elemennya terdiri dari dua bagian struktur berupa rangkaian elemen saling berkait dimana setiap elemen
dihubungkan elemen lain melalui pointer. Pointer adalah alamat elemen.
Penggunaan pointer untuk mengacu elemen berakibat elemen-elemen
bersebelahan secara logik walau tidak bersebelahan secara fisik di
memori.
link list adalah desain tempat penyimpanan data yang terdiri dari node-node yang saling terhubung, linked list bisa memanggil data dalam jumlah banyak dan berurutan. linked list ada 2 yaitu:
- Single linked list
- Double linked list
Single linked list adalah sekumpulan node yang terhubung dengan node lain melalui sebuah pointer.
Rangkaian single linked list diawali oleh head untuk menyimpan data di awal dan diakhiri dengan node yang mengarah pointer ke null. Single linked list hanya memiliki 1 arah.
Kelebihan single linked list yaitu lebih mudah membuat rantainya.
Kelemahannya adalah tidak bisa menunjuk node sebelumnya(tidak bisa memutar balik) akhirnya memunculkan 1 linked yang bernama trade (node terakhir pointer mengarah ke null).
contoh single linked list :
Struct tnode {
Int value;
struct tnode *next;
};
Struct tnode *head = 0;
Double linked list adalah linked list
dengan node yang memiliki data dan dua buah reference link (biasanya
disebut next dan prev) yang menunjuk ke node sebelum dan node
sesudahnya. bahasa lebih mudahnya double linked list ini pointernya bisa bolak balik.
contoh double linked list:
Struct tnode {
Int value;
Struct tnode *next;
Struct tnode *prev;
};
Struct tnode *head = 0;
Struct tnode *tail = 0;
2.Stack dan queue
perbedaan stack dan queue
Stack atau tumpukan merupakan sebuah koleksi objek yang menggunakan prinsip LIFO (Last In First Out), yaitu data yang terakhir kali dimasukkan akan pertama kali keluar dari tumpukan tersebut.
sedangkan queue atau antrian merupakan sebuah objek yang menggunakan prinsip FIFO (First In First Out), yaitu data yang pertama kali masuk akan keluar pertama kali.
Operasi Stack
Push(x) : menambahkan item x ke stack top
Pop() : membuang item dari data paling atas
Top() : mengembalikan item(data) paling atas
Top juga diketahui sebagai peek/ pick
Queue
circular queue : jika front sudah di ujung bisa diputar ulang ke depan
Double deque : bisa push sebelah kiri/ kanan biasa dipakai dalam antrian customer servis
Deques ada 2,yaitu :
Input restricted deque : pushya dibatasi cuma boleh 1 tempat
Output restricted deque : popnya dibatasi hanya boleh 1 tempat
Priority queue : antrian yang khusus tidak perlu ikut mengantri biasa dipakai dalam antrian vvip dan nasabah prioritas bank.
Tidak ada komentar:
Posting Komentar