Senarai dikaitkan dengan senarai dua kali ganda
Senarai Terkait adalah struktur data linear yang digunakan untuk menyimpan koleksi data. Senarai yang dipautkan memperuntukkan memori ke unsur -unsurnya secara berasingan dalam blok memori sendiri dan struktur keseluruhan diperoleh dengan menghubungkan unsur -unsur ini sebagai pautan dalam rantai. Senarai yang dikaitkan secara tunggal terdiri daripada urutan nod dan setiap nod mempunyai rujukan kepada nod seterusnya dalam urutan. Senarai dikaitkan dua kali mengandungi urutan nod di mana setiap nod mengandungi rujukan kepada nod seterusnya dan juga nod sebelumnya.
Senarai yang dikaitkan secara tunggal
Setiap elemen dalam senarai yang dikaitkan mempunyai dua bidang seperti yang ditunjukkan dalam Rajah 1. Medan data memegang data sebenar yang disimpan dan medan seterusnya memegang rujukan kepada elemen seterusnya dalam rantai. Unsur pertama senarai yang dipautkan disimpan sebagai ketua senarai yang dipautkan.
Rajah 2 menggambarkan senarai yang berkaitan dengan tiga elemen. Setiap elemen menyimpan datanya dan semua elemen kecuali yang terakhir menyimpan rujukan kepada elemen seterusnya. Elemen terakhir memegang nilai null dalam bidang seterusnya. Sebarang elemen dalam senarai boleh diakses dengan bermula di kepala dan mengikuti penunjuk seterusnya sehingga anda memenuhi elemen yang diperlukan.
Senarai dikaitkan dua kali ganda
Setiap elemen dalam senarai dikaitkan dua kali mempunyai tiga bidang seperti yang ditunjukkan dalam Rajah 3. Sama dengan senarai yang dipautkan secara tunggal, medan data memegang data sebenar yang disimpan dan medan seterusnya memegang rujukan kepada elemen seterusnya dalam rantai. Di samping itu, medan sebelumnya memegang rujukan kepada elemen sebelumnya dalam rantai. Unsur pertama senarai yang dipautkan disimpan sebagai ketua senarai yang dipautkan.
Rajah 4 menggambarkan senarai dikaitkan dua kali dengan tiga elemen. Semua Elemen Perantaraan menyimpan rujukan kepada elemen pertama dan sebelumnya. Unsur terakhir dalam senarai memegang nilai null dalam medan seterusnya dan elemen pertama dalam senarai memegang nilai null dalam medan sebelumnya. Senarai dikaitkan dua kali boleh dilalui ke hadapan dengan mengikuti rujukan seterusnya dalam setiap elemen dan juga boleh dilalui ke belakang menggunakan rujukan sebelumnya dalam setiap elemen.
Apakah perbezaan antara senarai dikaitkan secara tunggal dan senarai dikaitkan dua kali?
Setiap elemen dalam senarai dikaitkan secara tunggal mengandungi rujukan kepada elemen seterusnya dalam senarai, sementara setiap elemen dalam senarai dikaitkan dua kali mengandungi rujukan kepada elemen seterusnya serta elemen sebelumnya dalam senarai. Senarai dikaitkan dua kali memerlukan lebih banyak ruang untuk setiap elemen dalam senarai dan operasi asas seperti penyisipan dan penghapusan lebih kompleks kerana mereka harus berurusan dengan dua rujukan. Tetapi senarai pautan berganda membolehkan manipulasi lebih mudah kerana ia membolehkan melintasi senarai ke arah hadapan dan ke belakang.