Saya membuat beberapa pelarasan pada versi awal senarai saya, kini ia memenuhi keperluan yang ditetapkan dalam bahan Profesor Maziero. Saya melaraskannya untuk lulus ujian dan saya juga memutuskan untuk menggunakan readapt untuk C. Penyusunan bersama-sama dengan fail ujian yang tersedia kelihatan kurang bermasalah dengan cara itu.
Sambil menyemak semula kod untuk senarai ini, saya perlu menyemak semula senarai yang lebih ringkas yang datang sebelum pekeliling rantaian dua, jadi saya dapat menyusun alasan yang kukuh semasa mengekod.
Ia ialah struktur di mana setiap nod mengandungi tiga bahagian: Nilai, penunjuk ke nod seterusnya dan penunjuk ke nod sebelumnya.
Membenarkan navigasi dua arah dan untuk mengalih keluar atau menambah nod, anda hanya perlu melaraskan titik nod sebelumnya dan seterusnya.
[head] <-> [nó1] <-> [nó2] <-> [tail]
Ia boleh dirantai secara ringkas (arah satu sisi) atau dirantai dua kali (inilah yang saya gunakan untuk projek itu).
Nod terakhir dalam senarai disambungkan kepada yang pertama, yang bermaksud senarai itu tidak mempunyai titik penamat semula jadi.
Senarai itu boleh ditatal selama-lamanya, kerana apabila ia sampai ke penghujung, ia kembali ke permulaan.
Menggunakan senarai pautan berganda bulat menjadikan sistem pengendalian mempunyai ciri penskalaan bulat.
Maksudnya, selepas proses terakhir dilaksanakan, sistem kembali kepada yang pertama dan meneruskan pelaksanaan.
Membayangkan bahawa sistem pengendalian mempunyai tiga proses:
[P1] <-> [P2] <-> [P3] <-> [P1] ...
Selepas P3 menamatkan masa pelaksanaannya, senarai akan kembali terus ke P1, memastikan pelaksanaan berterusan.
Kod sistem pengendalian semasa boleh didapati di sini.
Atas ialah kandungan terperinci Dia - Melaksanakan semula senarai pekeliling berganda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!