LINKED LIST
Linked list akan membentuk struktur data yang digunakan untuk implement lainnya.
Ada 4 logika/kondisi insert :
- Node yang baru dimasukan pada awal
- Node baru yang dimasukan diisi pada bagian akhir
- Node baru yang dimasukan/di isi setelah di beri node baru
- Node baru yang dimasukan diisi sebelum diberi node
Single linked list
Untuk membuat list, pertama-tama kita harus mendefinisikan sebuah node struktur untuk listing. misalnya kita ingin membuat sebuah integer
struct tnode(
int value;
struct tnode *next
);
struct tnode *head = 0 ;
head adalah pointer element pertama di linked list
Single Linked list : Insert
Untuk memasukan nilai baru, pertama kita harus melokasikan node baru dan menetapkan tugas untuk value untuk kemudian menghubungkan dengan linked list yang sudah ada
Single Linked list : Delete
Untuk menghapus sebuag value, pertama kita harus menemukan lokasi dari node yang menyimpan value yang ingin kita hapus dan menghubungkan nya dengan linked list yang ada.
Circular Single Linked list
- Pada circular, node terakhir berisi pointer pada node pertama
- kita bisa mempunyai circular single linked list dan crucular doubly linked list
- Pada circular linked list tidak ada NULL
memiliki pengertian sama seperti Circular Single Linked List, hanya saja total pointer pada setiap node ada 2 pointer.
Header linked list
- Sebuah header linked list akan terhubung pada list special yang berisi header pada bagian awal list.
- Di Linked list, START(L) tidak akan di hubungkan pada node pertama di list tapi START(L) akan menghubungkan alamat pada header node
Structure
Structure pada dasar nya user define tipe data yang bisa menampung informasi yang berkaitan, sementara array hanya bisa menampung tipe data yang sama