Miklix

ล่าและฆ่าเครื่องกําเนิดเขาวงกต

ที่ตีพิมพ์: 16 กุมภาพันธ์ 2025 เวลา 20 นาฬิกา 57 นาที 41 วินาที UTC

เครื่องกําเนิดเขาวงกตโดยใช้อัลกอริทึม Hunt and Kill เพื่อสร้างเขาวงกตที่สมบูรณ์แบบ อัลกอริทึมนี้คล้ายกับ Recursive Backtracker แต่มีแนวโน้มที่จะสร้างเขาวงกตที่มีทางเดินที่ยาวและคดเคี้ยวน้อยกว่า

หน้าเพจนี้ได้รับการแปลจากเครื่องคอมพิวเตอร์จากภาษาอังกฤษ เพื่อให้ทุกคนเข้าถึงได้มากที่สุด น่าเสียดายที่การแปลด้วยเครื่องยังไม่ถือเป็นเทคโนโลยีที่สมบูรณ์แบบ จึงอาจเกิดข้อผิดพลาดได้ หากต้องการ คุณสามารถดูเวอร์ชันภาษาอังกฤษต้นฉบับได้ที่นี่:

Hunt and Kill Maze Generator

อัลกอริทึม Hunt and Kill เป็นเวอร์ชันดัดแปลงของ Recursive Backtracker การปรับเปลี่ยนประกอบด้วยการสแกนอย่างเป็นระบบ (หรือ "การล่า") เพื่อหาเซลล์ใหม่เพื่อดําเนินการต่อจากเมื่อไม่สามารถไปต่อได้ซึ่งตรงข้ามกับการค้นหาแบบเรียกซ้ําที่แท้จริงซึ่งจะกลับไปที่เซลล์ก่อนหน้าบนสแต็กเสมอ

ด้วยเหตุนี้อัลกอริทึมนี้จึงสามารถปรับเปลี่ยนเพื่อสร้างเขาวงกตที่มีรูปลักษณ์และความรู้สึกที่แตกต่างกันได้อย่างง่ายดายเพียงแค่เลือกที่จะเข้าสู่โหมด "ล่าสัตว์" บ่อยขึ้นหรือตามกฎเฉพาะ เวอร์ชันที่นํามาใช้ที่นี่จะเข้าสู่โหมด "ล่าสัตว์" เมื่อไม่สามารถไปไกลจากเซลล์ปัจจุบันได้เท่านั้น

เขาวงกตที่สมบูรณ์แบบคือเขาวงกตที่มีเส้นทางเดียวจากจุดใดก็ได้ในเขาวงกตไปยังจุดใดก็ได้ นั่นหมายความว่าคุณไม่สามารถวนไปวนมาได้ แต่บ่อยครั้งที่คุณจะเจอทางตัน ซึ่งบังคับให้คุณต้องหันหลังกลับและเดินกลับไป

แผนที่เขาวงกตที่สร้างขึ้นที่นี่มีเวอร์ชันเริ่มต้นโดยไม่มีตำแหน่งเริ่มต้นและจุดสิ้นสุด ดังนั้นคุณจึงตัดสินใจเองได้: จะมีทางออกจากจุดใดก็ได้ในเขาวงกตไปยังจุดอื่นๆ หากคุณต้องการแรงบันดาลใจ คุณสามารถเปิดใช้งานตำแหน่งเริ่มต้นและจุดสิ้นสุดที่แนะนำได้ และดูทางออกระหว่างทั้งสองตำแหน่งได้ด้วย


สร้างเขาวงกตใหม่








เกี่ยวกับอัลกอริทึม Hunt and Kill

อัลกอริทึม Hunt and Kill เป็นวิธีที่ง่ายแต่มีประสิทธิภาพในการสร้างเขาวงกต มันค่อนข้างคล้ายกับการค้นหาที่เน้นความลึกเป็นอันดับแรก (เช่น อัลกอริธึม Recursive Backtracker) ยกเว้นเมื่อไม่สามารถไปไกลจากตําแหน่งปัจจุบันได้มันจะสแกนอย่างเป็นระบบ (หรือ "ล่า") เหนือเขาวงกตเพื่อค้นหาเซลล์ใหม่เพื่อดําเนินการต่อ อัลกอริทึมประกอบด้วยสองขั้นตอนหลัก: การเดินและการล่าสัตว์

อัลกอริทึม Hunt and Kill ทํางานอย่างไรสําหรับการสร้างเขาวงกต

ขั้นตอนที่ 1: เริ่มต้นที่เซลล์แบบสุ่ม

  • ค้นหาเซลล์แบบสุ่มในตารางและทําเครื่องหมายว่าเยี่ยมชมแล้ว

ขั้นตอนที่ 2: ระยะเดิน (Random Walk)

  • เลือกเพื่อนบ้านที่ยังไม่ได้เยี่ยมชมแบบสุ่ม
  • ย้ายไปยังเพื่อนบ้านนั้น ทําเครื่องหมายว่าเยี่ยมชมแล้ว และแกะสลักเส้นทางระหว่างเซลล์ก่อนหน้าและเซลล์ใหม่
  • ทําซ้ําจนกว่าจะไม่มีเพื่อนบ้านที่ยังไม่ได้เยี่ยมชมเหลืออยู่

ขั้นตอนที่ 3: ระยะการล่าสัตว์ (ย้อนกลับผ่านการสแกน)

  • สแกนตารางแถวทีละแถว (หรือคอลัมน์ต่อคอลัมน์)
  • ค้นหาเซลล์แรกที่ยังไม่ได้เยี่ยมชมซึ่งมีเพื่อนบ้านที่มาเยี่ยมอย่างน้อยหนึ่งคน
  • เชื่อมต่อเซลล์นั้นกับเพื่อนบ้านที่มาเยี่ยมเพื่อเดินต่อ
  • ทําซ้ําจนกว่าจะมีการเยี่ยมชมเซลล์ทั้งหมด

แชร์บนบลูสกายแชร์บนเฟสบุ๊คแชร์บน LinkedInแชร์บน Tumblrแชร์บน Xแชร์บน LinkedInปักหมุดบน Pinterest

มิคเคล บัง คริสเตนเซ่น

เกี่ยวกับผู้เขียน

มิคเคล บัง คริสเตนเซ่น
ไมเคิล คือผู้สร้างและเจ้าของเว็บไซต์ miklix.com เขามีประสบการณ์เป็นโปรแกรมเมอร์/นักพัฒนาซอฟต์แวร์คอมพิวเตอร์มืออาชีพมากว่า 20 ปี และปัจจุบันทำงานเต็มเวลาให้กับบริษัทไอทีขนาดใหญ่แห่งหนึ่งในยุโรป เมื่อไม่ได้เขียนบล็อก เขาจะใช้เวลาว่างไปกับความสนใจ งานอดิเรก และกิจกรรมต่างๆ มากมาย ซึ่งในระดับหนึ่งอาจสะท้อนให้เห็นได้จากหัวข้อต่างๆ มากมายที่กล่าวถึงในเว็บไซต์นี้