Maze генераторыг агнаж ал
Нийтэлсэн: 2025 оны гуравдугаар сарын 19 20:44:31 (UTC)
Төгс төөрдөг байшинг бүтээхийн тулд Hunt and Kill алгоритмыг ашиглан Maze генератор. Энэ алгоритм нь Recursive Backtracker-тэй төстэй боловч арай бага урт ороомогтой коридортой төөрдөг шороог үүсгэх хандлагатай байдаг.Hunt and Kill Maze Generator
Х hunt and kill алгоритм нь үндсэндээ Recursive Backtracker-ийн өөрчилсөн хувилбар юм. Энэ өөрчлөлт нь урд чиглэлд явж чадахгүй үед шинэ эсүүдийг (эсвэл "ан хийх") системтэйгээр хайж олох бөгөөд жинхэнэ рекурсив хайлт нь үргэлж өмнөх эс рүү буцах болно.
Ийм учраас энэ алгоритмыг өөр өөр төрлийн лабиринт үүсгэхэд амархан тохируулж болно, зөвхөн "ан хийх" горимд илүү олон удаа орох эсвэл тодорхой дүрэм журамд үндэслэн. Энд хэрэгжүүлсэн хувилбар нь зөвхөн одоогийн эсээс цааш явах боломжгүй үед "ан хийх" горимд орно.
Төгс төөрдөг байшин гэдэг нь төөрдөг шорооны аль ч цэгээс өөр цэг хүртэл яг нэг зам байдаг төөрдөг байшин юм. Энэ нь та эргэн тойронд эргэлдэж чадахгүй гэсэн үг, гэхдээ та ихэнхдээ гарцгүй гарцтай тулгарах бөгөөд таныг эргэж, буцаж явахад хүргэдэг.
Энд үүсгэсэн төөрдөг шорооны газрын зураг нь ямар ч эхлэл, төгсгөлийн байрлалгүй анхдагч хувилбарыг агуулдаг тул та эдгээрийг өөрөө шийдэх боломжтой: төөрдөг газрын аль ч цэгээс өөр цэг хүртэл шийдэл байх болно. Хэрэв та урам зориг авахыг хүсч байвал санал болгож буй эхлэх, дуусгах байрлалыг идэвхжүүлж, тэр ч байтугай хоёрын хоорондох шийдлийг харж болно.
Хайх болон Тамхины Алгоритмын Тухай
Хайх болон Тамхины алгоритм нь лабиринт үүсгэхэд ашигладаг энгийн боловч үр дүнтэй арга юм. Энэ нь нэлээд их хэмжээгээр гүний хайлттай төстэй (жишээ нь, Давтан Буцах Алгоритм), гэхдээ одоогийн байрлалтай цааш явж чадахгүй үедээ системтэйгээр лабиринт дээр сэргийлэх (эсвэл "хайх") үйлдэл хийнэ, шинэ нүдийг олж, түүнээс цааш явна. Алгоритм нь хоёр үндсэн үе шаттай: алхах болон хайх.
Хайх болон Тамхины Алгоритм Лабиринт Үүсгэхэд Хэрхэн Ажилладаг вэ?
Алхам 1: Санамсаргүй нүднээс эхлэх
- Гүйцэтгэх талбарт санамсаргүй нүдийг олоод, түүнд "зочилсон" гэсэн тэмдэг тавь.
Алхам 2: Алхах Үе (Санамсаргүй Алхах)
- Санамсаргүйгээр зочлоогүй хөршийг сонго.
- Түүнд шилжиж, түүнийг зочилсон гэж тэмдэглэж, өмнөх болон шинэ нүдний хооронд зам ухаж хийнэ.
- Зочлоогүй хөршгүй болтол давтана.
Алхам 3: Хайх Үе (Сканираар Буцах)
- Гүйцэтгэх талбарыг мөрөөр нь (эсвэл баганаар нь) сканердаж хай.
- Анхны зочлоогүй нүдийг олж, тухайн нүд нь дор хаяж нэг зочилсон хөрштэй байх хэрэгтэй.
- Тэр нүдийг зочилсон хөрштэй холбож, алхах үеийг үргэлжлүүлнэ.
- Бүх нүдийг зочилсон болтол давтана.