Miklix

Avla ve Öldür Labirenti Oluşturucu

Yayınlandı: 16 Şubat 2025 20:57:26 UTC

Mükemmel bir labirent oluşturmak için Hunt and Kill algoritmasını kullanan labirent oluşturucu. Bu algoritma Recursive Backtracker'a benzerdir, ancak biraz daha az uzun, dolambaçlı koridorlara sahip labirentler üretme eğilimindedir.

Bu sayfa, mümkün olduğunca çok kişi tarafından erişilebilir olması amacıyla İngilizce'den makine çevirisiyle çevrilmiştir. Ne yazık ki, makine çevirisi henüz mükemmelleştirilmiş bir teknoloji değildir, bu nedenle hatalar meydana gelebilir. Tercih ederseniz, orijinal İngilizce versiyonu buradan görüntüleyebilirsiniz:

Hunt and Kill Maze Generator

Hunt and Kill algoritması aslında Recursive Backtracker'ın değiştirilmiş bir versiyonudur. Değişiklik, daha ileri gidemediğinde devam etmek için sistematik olarak yeni bir hücre taramayı (veya "avlanmayı") içerir, yığındaki her zaman önceki hücreye geri dönecek olan gerçek bir recursive aramanın aksine.

Bu nedenle, bu algoritma, daha sık veya belirli kurallara göre "avlanma" moduna girmeyi seçerek farklı görünüm ve hislere sahip labirentler oluşturmak için kolayca uyarlanabilir. Burada uygulanan sürüm, yalnızca geçerli hücreden daha uzağa gidemediğinde "avlanma" moduna girer.

Mükemmel bir labirent, labirentteki herhangi bir noktadan diğer herhangi bir noktaya tam olarak tek bir yolun olduğu bir labirenttir. Bu, daireler çizerek ilerleyemeyeceğiniz, ancak sık sık çıkmaz sokaklarla karşılaşacağınız ve sizi geri dönmeye zorlayacağınız anlamına gelir.

Burada oluşturulan labirent haritaları, herhangi bir başlangıç ve bitiş konumu olmayan varsayılan bir sürüm içerir, böylece bunlara kendiniz karar verebilirsiniz: labirentin herhangi bir noktasından başka bir noktaya bir çözüm olacaktır. İlham almak isterseniz, önerilen bir başlangıç ve bitiş konumunu etkinleştirebilir ve hatta ikisi arasındaki çözümü görebilirsiniz.


Yeni labirent oluşturun








Hunt and Kill Algoritması Hakkında

Hunt and Kill algoritması, labirentler oluşturmak için basit ama etkili bir yöntemdir. Derinlik öncelikli aramaya (yani Recursive Backtracker algoritmasına) biraz benzerdir, ancak mevcut konumdan daha uzağa gidemediğinde, devam etmek için yeni bir hücre bulmak üzere labirenti sistematik olarak tarar (veya "avlar"). Algoritma iki ana aşamadan oluşur: yürüme ve avlanma.

Labirent Oluşturmada Av ve Öldürme Algoritması Nasıl Çalışır?

Adım 1: Rastgele bir hücreden başlayın

  • Tabloda rastgele bir hücre bulun ve ziyaret edilmiş olarak işaretleyin.

Adım 2: Yürüyüş Aşaması (Rastgele Yürüyüş)

  • Rastgele ziyaret edilmemiş bir komşu seçin.
  • O komşuya geçin, ziyaret edilmiş olarak işaretleyin ve önceki ve yeni hücre arasında bir yol açın.
  • Ziyaret edilmeyen komşu kalmayana kadar bu işlemi tekrarlayın.

Adım 3: Avlanma Aşaması (Tarama Yoluyla Geriye Dönük İzleme)

  • Izgarayı satır satır (veya sütun sütun) tarayın.
  • En az bir ziyaret edilmiş komşusu olan ilk ziyaret edilmemiş hücreyi bulun.
  • Yürüme evresine devam etmek için o hücreyi ziyaret edilen bir komşuya bağlayın.
  • Tüm hücreler ziyaret edilene kadar tekrarlayın.

Bluesky'de paylaşFacebook'ta paylaşLinkedIn'de paylaşTumblr'da paylaşX'te paylaşLinkedIn'de paylaşPinterest'e Pinleyin

Mikkel Bang Christensen

Yazar Hakkında

Mikkel Bang Christensen
Mikkel miklix.com'un yaratıcısı ve sahibidir. Profesyonel bilgisayar programcısı/yazılım geliştiricisi olarak 20 yılı aşkın deneyime sahiptir ve şu anda büyük bir Avrupa BT şirketinde tam zamanlı olarak çalışmaktadır. Blog yazmadığı zamanlarda, boş zamanlarını çok çeşitli ilgi alanları, hobiler ve aktivitelerle geçirmektedir ve bu da bir dereceye kadar bu web sitesinde kapsanan konuların çeşitliliğine yansıyabilir.