2025 Muallif: Lynn Donovan | [email protected]. Oxirgi o'zgartirilgan: 2025-01-22 17:45
Bog'langan ro'yxatdagi ma'lum bir joyga tugunni joylashtiring
- O'tish Bog'langan ro'yxat pozitsiyasiga qadar - 1 tugunlar .
- Bir marta barcha pozitsiya-1 tugunlar o'tkaziladi, xotira va berilgan ma'lumotlarni yangisiga ajratadi tugun .
- Yangining keyingi ko'rsatkichiga ishora qiling tugun oqimning keyingi qismiga tugun .
- Joriy oqimning keyingi ko'rsatkichiga ishora qiling tugun yangisiga tugun .
Qanday qilib bog'langan ro'yxatga biror narsa qo'shish mumkin?
LinkedList sinfining usullari:
- mantiqiy qo'shimcha (Ob'ekt elementi): Ro'yxat oxiridagi elementni qo'shadi.
- void add(int index, Object element): U roʻyxatning berilgan indeksiga element qoʻshadi.
- mantiqiy addAll(Collektsiya c): Belgilangan c to'plamining barcha elementlarini ro'yxatga qo'shadi.
bog'langan ro'yxatga yangi tugun qayerda qo'shiladi? The yangi tugun har doim bo'ladi qo'shildi oxirgisidan keyin tugun berilganlardan Bog'langan ro'yxat . Masalan, agar berilgan bo'lsa Bog'langan ro'yxat 5->10->15->20->25 va biz qo'shish oxirida 30-band, keyin esa Bog'langan ro'yxat 5->10->15->20->25->30 ga aylanadi.
Shuningdek, bilingki, bog'langan ro'yxatning oxiriga tugunni qanday qo'shishim mumkin?
Yagona bog'langan ro'yxatning oxiriga tugunni kiritish bosqichlari
- Yangi tugun yarating va yangi tugunning manzil qismi NULL ga ishora qilishiga ishonch hosil qiling, ya'ni newNode->keyingi=NULL.
- Bog'langan ro'yxatning oxirgi tuguniga o'ting va ro'yxatning oxirgi tugunini yangi tugun bilan ulang, ya'ni oxirgi tugun endi yangi tugunga ishora qiladi.
Bog'langan ro'yxatni qanday saralaysiz?
Birlashtirish tartibidan foydalanib, bog'langan ro'yxatni qanday saralash mumkin
- Agar: Roʻyxatda bir yoki bir nechta element boʻlsa, xuddi shu roʻyxatni qaytaring.
- Aks holda: boʻlish funksiyasidan foydalanib roʻyxatni ikkiga boʻling.
- Saralash: Roʻyxatning ikki yarmini saralash.
- Oxirida tartiblangan ro'yxatlarni birlashtiring.
Tavsiya:
Bog'langan ro'yxatni alifbo tartibida qanday tartiblashim mumkin?
Java-da LinkedList qatorini saralash oson. Sort (Roʻyxat roʻyxati) dan foydalanib, LinkedList qatorini oʻsish boʻyicha alifbo tartibida tartiblashingiz mumkin. Shuningdek, siz LinkedList qatorini alifbo tartibida kamayish bo'yicha saralashingiz mumkin
Ikki marta bog'langan DLL ro'yxati yagona bog'langan ro'yxat SLL bilan qanday taqqoslanadi?
Ikki marta bog'langan ro'yxatga kirish: Ikki marta bog'langan ro'yxat (DLL) qo'shimcha ko'rsatgichni o'z ichiga oladi, odatda oldingi ko'rsatgich deb ataladi, keyingi ko'rsatgich va alohida bog'langan ro'yxatdagi ma'lumotlar bilan birga. SLL faqat ma'lumotlar maydoni va keyingi havola maydoniga ega tugunlarga ega. DLL SLL dan ko'ra ko'proq xotirani egallaydi, chunki u 3 ta maydonga ega
Bog'langan stekdagi elementlarni qanday surish va ochish mumkin?
Implementation Push(a): U elementni stek ustiga qo'shadi. Har bir stek tugunini bog‘langan ro‘yxatning old qismiga kiritish uchun O (1 O(1 O(1)) vaqt ketadi. Pop(): stekning yuqori qismidagi elementni olib tashlaydi. Top(): Elementni qaytaradi. to'plamning yuqori qismi
Yagona bog'langan ro'yxatni qanday saralashim mumkin?
Quyida bog'langan ro'yxat uchun oddiy qo'shish tartiblash algoritmi keltirilgan. 1) Bo'sh tartiblangan (yoki natija) ro'yxatini yarating 2) Berilgan ro'yxat bo'ylab harakatlaning, har bir tugun uchun quyidagi amallarni bajaring. a) Joriy tugunni tartiblangan yoki natijalar ro'yxatiga tartiblangan tarzda kiriting. 3) Berilgan bog'langan ro'yxatning boshini tartiblangan (yoki natija) ro'yxatining boshiga o'zgartiring
Ikki marta bog'langan ro'yxat va dumaloq bog'langan ro'yxat o'rtasidagi farq nima?
Dumaloq bog'langan ro'yxat - bu nostart yoki oxirgi tugunlar mavjud bo'lgan ro'yxat, lekin buning o'rniga ular aylana naqshiga amal qiladi. Ikki marta bog'langan ro'yxat - bu har bir tugun nafaqat keyingi tugunni, balki oldingi tugunni ham ko'rsatadigan ro'yxat