Tutorial Linked List: – Memulai Dengan Penyimpanan Data Dinamis

Penyingkapan: Dukungan Anda membantu menjaga situs tetap berjalan! Kami mendapatkan biaya referensi untuk beberapa layanan yang kami rekomendasikan pada halaman ini.


Daftar tertaut dapat menjadi alat yang berharga ketika harus menyusun set data yang berbeda dan mengatur informasi linier untuk suatu program. Mereka umumnya digunakan sebagai pengganti array karena mereka memiliki manfaat tertentu untuk menggunakannya.

Pada intinya, daftar tertaut adalah struktur data sederhana yang menampung urutan node. Setiap node memiliki data sendiri, ditambah pointer ke node lain. Bahkan, mereka sering mengajar untuk membuat siswa nyaman dengan petunjuk.

Di bawah ini Anda akan belajar apa daftar tertaut, mengapa mereka berharga, dan cara membuatnya. Kami juga akan menawarkan beberapa sumber tambahan untuk membantu melanjutkan pendidikan Anda.

Apa Yang Ditautkan Daftar?

Sederhananya, daftar tertaut adalah kumpulan data yang dipesan. Ini dimaksudkan untuk struktur data linier dan merupakan salah satu struktur data dinamis termudah untuk diimplementasikan. Setiap elemen data disebut node dan berisi nilai tunggal dan pointer ke node berikutnya dalam daftar. Jika pointer memiliki nilai NULL, maka simpul itu adalah yang terakhir dalam daftar.

Untuk membantu memahami konsep ini, inilah contoh di luar teknologi komputer:

Katakanlah Anda memberi peringkat setiap orang di kantor berdasarkan kecepatan mengetik. Daftar Anda akan dimulai dengan Ann karena semua orang tahu dia yang tercepat – Anda dapat mendengar suara yang berasal dari biliknya. Dia diberi tahu bahwa orang tercepat berikutnya adalah Steve. Steve tahu bahwa kecepatan mengetiknya dekat dengan Ann, tetapi tidak sebagus itu. Dia juga tahu bahwa Karen hampir secepat dia, tetapi tidak cukup. Daftar kemudian dapat dilanjutkan dengan cara ini. Setiap anggota memiliki informasi unik, plus indikator untuk siapa yang mengetik tercepat berikutnya.

Karena ada node yang independen satu sama lain, kecuali oleh hubungan pointer, sangat mudah untuk menambah, menghapus, dan memindahkannya.

Jenis Daftar Tertaut

Ada beberapa jenis daftar tertaut. Daftar tertaut tunggal, daftar tertaut ganda, daftar multilink, dan daftar tertaut melingkar. Kami menjelajahi masing-masing lebih detail di bawah ini. Dengan daftar tertaut, Anda dapat melakukan operasi penyisipan, penghapusan, dan traversal.

1. Daftar Tertaut Tunggal

Daftar tertaut tunggal adalah kumpulan objek data yang dihubungkan bersama oleh referensi tertentu dari satu objek ke yang berikutnya. Objek-objek ini sering disebut sebagai node. Setiap node akan berisi setidaknya satu bidang data tunggal dan referensi ke simpul berikut. Daftar tertaut tunggal diakses melalui simpul pertama dan dapat dilalui hingga akhir daftar.

2. Daftar Tertaut Ganda

Daftar yang tertaut ganda memiliki dua referensi per setiap node. Referensi menunjuk ke simpul berikutnya, dan simpul sebelumnya. Dengan struktur ini, Anda memiliki akses dua arah ke kumpulan data, dan ia menawarkan Anda lebih banyak fleksibilitas dan kecepatan, karena Anda dapat menavigasi daftar Anda dua arah..

3. Daftar Multilink

Daftar multilink adalah daftar tertaut umum yang memiliki beberapa daftar tambahan dari simpul tertentu. Daftar baru bisa dalam salah satu gaya yang disebutkan di sini. Gaya daftar ini dapat membantu untuk menyortir daftar yang dirinci berdasarkan nama dan usia pengguna. Atau, gaya kumpulan data lainnya di mana setiap titik data memiliki klasifikasi lebih lanjut.

4. Circular Linked List

Jenis terakhir dari daftar tertaut disebut daftar tertaut melingkar. Alih-alih simpul akhir memiliki perintah NULL itu akan merujuk kembali ke kepala daftar. Struktur daftar mirip dengan opsi di atas.

Mengapa Daftar Tertaut Penting

Daftar tertaut berguna, karena sifatnya yang dinamis. Dalam arti komputasi, itu hanya mengalokasikan memori bila diperlukan. Jadi, jika Anda memiliki aplikasi yang membutuhkan pengubahan ukuran sering, penghapusan, penyisipan, dan pembaruan data, maka daftar tertaut akan menjadi sempurna.

Linked Linked biasanya digunakan untuk mengimplementasikan grafik, tumpukan, antrian, dan program serupa lainnya. Dengan daftar tertaut Anda dapat memasukkan item di mana saja dalam daftar. Plus, Anda tidak perlu tahu ukuran daftar akhir sebelumnya. Ini dapat menambah atau mengurangi ukuran sesuai keinginan Anda.

Penyisipan dan penghapusan yang mudah adalah keuntungan utama dari daftar yang ditautkan. Misalnya, Anda bisa menggunakan array, tetapi array hanya memungkinkan Anda menambah dan menghapus objek terakhir dalam urutan tanpa memindahkan banyak data untuk membuat slot terbuka. Linked Linked memungkinkan manipulasi set data yang mudah, tanpa menempatkan sumber daya memori yang besar.

Sebagian besar program Ilmu Komputer terus mengajarkan siswa bagaimana menerapkan daftar tertaut, sebagai pengantar yang solid untuk struktur data dinamis yang mungkin ingin Anda gunakan dalam program nyata. Plus, bahkan jika Anda tidak pernah berakhir menggunakan daftar tertaut, itu akan memberi Anda pemahaman yang cukup untuk menggunakan pointer. Anda pasti akan menggunakan pointer di banyak program kehidupan nyata Anda.

Kerugian Daftar Tertaut

Daftar tertaut sangat bagus untuk membuat daftar yang mudah dimodifikasi. Namun, mereka bukan solusi yang sempurna untuk setiap program, seperti yang Anda lihat di bawah:

  1. Daftar tertaut tidak menawarkan titik akses acak. Untuk mencapai item tertentu dalam daftar Anda, Anda harus mengulangi setiap item dalam daftar hingga saat itu.
  2. Kode bisa menjadi sedikit rumit karena alokasi memori dinamis dan pointer diperlukan agar kode berfungsi.
  3. Total overhead untuk daftar tertaut dapat lebih tinggi dari array, karena daftar dialokasikan secara dinamis.

Semua yang dikatakan, mengetahui cara menggunakan daftar tertaut akan membantu Anda menguasai penggunaan pointer dan memiliki pemahaman yang lebih besar tentang kumpulan data dinamis secara keseluruhan.

Tutorial Linked Linked

Di bawah ini Anda akan belajar cara membuat dan menerapkan daftar tertaut dasar. Kami akan mulai dengan membuat satu daftar yang tertaut dan itu adalah simpul, dan menunjukkan cara menghapus dan menyisipkan simpul baru.

Membuat Struktur Node

Daftar tertaut terdiri dari beberapa node, jadi kita perlu membuat struktur yang mendefinisikan sebuah node. Ini perlu menyertakan setidaknya satu variabel untuk data dan satu pointer untuk merujuk ke simpul berikutnya. Untuk tujuan kami, kami akan berpegang pada contoh kecepatan mengetik kami dan menggunakan nama orang dan kecepatan dan data kami. Dalam C, data akan didefinisikan dalam struktur sebagai berikut:

simpul simpul {
nama string [32];
kecepatan int;
struct node * selanjutnya;
}

Yang penting di sini adalah pointer berikutnya, yang memungkinkan kita untuk bekerja melalui daftar.

Membuat Daftar Tertaut

Sekarang, kita perlu membuat daftar, yang sebenarnya hanya membuat simpul pertama. Jadi kita mendefinisikannya, mengalokasikan memori yang cukup untuk satu node, dan mengatur pointer berikutnya ke NULL sehingga kita tahu ini adalah akhir dari daftar. Anda juga mengatur pointer kepala ke sana karena ini adalah di mana daftar tertaut dimulai.

Kemudian Anda dapat mengisi informasi untuk simpul ini: nama karyawan dan kecepatan mengetiknya.

Memasukkan Node

Dengan daftar dasar kami dibuat, kami sekarang dapat mulai menambahkan elemen ke daftar. Jadi misalkan Anda mulai dengan Karen yang memiliki kecepatan mengetik 58 kata per menit. Selanjutnya Anda ingin memasukkan Steve dengan kecepatan 63. Anda akan membuat simpul untuknya dan mengisi data. Kemudian Anda akan mencari melalui daftar tertaut, tetapi dalam kasus ini, hanya akan ada satu elemen. Anda akan mencatat bahwa Steve memiliki kecepatan mengetik yang lebih cepat, jadi Anda akan mengatur pointer berikutnya ke pointer Karen. Karena pointer Karen juga merupakan pointer kepala, Anda akan membuat titik kepala ke simpul Steve.

Sekarang Anda memiliki daftar tertaut yang dimulai dengan simpul Steve. Selanjutnya akan menunjuk ke simpul Karen. Dan simpul Karen akan menunjuk ke NULL, menunjukkan bahwa simpulnya adalah yang terakhir dalam daftar.

Jika seorang karyawan dipekerjakan dengan kecepatan mengetik antara Karen dan Steve, sebuah simpul akan dibuat untuk mereka. Tetapi kemudian Steve berikutnya akan menunjuk ke karyawan baru, dan karyawan baru berikutnya akan menunjuk ke karyawan Karen.

Di sisi lain, jika seorang karyawan dipekerjakan dengan kecepatan mengetik kurang dari Karen, sebuah simpul lagi akan dibuat untuk mereka. Tapi kemudian Karen berikutnya akan menunjuk ke karyawan baru, dan karyawan baru berikutnya akan menunjuk ke NULL.

Menghapus Node

Menghapus simpul dari daftar tertaut sebenarnya adalah proses yang cukup mudah. Kami akan membuat pointer berikutnya pada karyawan di depan karyawan yang ingin kami hapus menunjuk ke karyawan setelah karyawan yang ingin kami hapus. Kami kemudian akan melepaskan memori dari node yang dihapus atau kami akan berakhir dengan kebocoran memori.

Tentu saja, ada banyak lagi yang dapat Anda lakukan dengan daftar tertaut. Jika Anda tertarik untuk menjelajahi daftar tertaut lebih jauh, maka periksa sumber daya yang disorot di bawah ini.

Sumber Daya Daftar Tertaut

Setelah Anda memahami konsep dasar daftar tertaut, inilah saatnya untuk mengembangkan pengetahuan Anda. Di bawah ini kami menawarkan beberapa sumber daya tambahan untuk membantu benar-benar menguasai daftar tertaut dan mendapatkan pemahaman yang lebih dalam tentang struktur data:

  • Struktur Data dan Algoritma Made Easy (2016) oleh Narasimha Karumanchi: sebuah buku hebat tentang struktur data yang akan membawa Anda jauh melampaui daftar tertaut.
  • Dasar-Dasar Linked Linked (PDF): PDF 26 halaman ini akan memberi Anda hampir semua hal yang ingin Anda ketahui dengan pseudo-code dan contoh bahasa C.
  • Pengantar yang Lembut untuk Struktur Data: pengantar sederhana ini akan membawa Anda sepenuhnya melalui pembuatan program daftar tertaut pertama Anda.
  • Linked List Tutorials: ini adalah kumpulan 7 video pendek tentang cara membuat daftar tertaut di C++.
  • Learn-C.org Halaman daftar tertaut: halaman ini membimbing Anda melalui pembuatan daftar tertaut bahasa C sederhana.
  • Struktur Data dengan Javascript: pelajari daftar tertaut tepat di dalam browser Anda dengan tutorial JavaScript ini.

Ringkasan

Daftar tertaut menawarkan konsep hebat dan metode praktis untuk mengelola dan membuat set data dinamis. Semoga informasi di atas telah membantu Anda memahami dan menerapkan daftar tertaut dasar, dan Anda akan bergerak maju dari sana.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map