อัลกอริธึมเขาวงกตจากเขาวงกตของ Jamis Buck สำหรับโปรแกรมเมอร์ที่ใช้ใน Clojure
ดูการดำเนินการที่ http://glv.github.io/snergly
ฉันกำลังทำสิ่งนี้เป็นโครงการที่สนุกเพื่อพัฒนาทักษะ Clojure ของฉัน
ฉันต้องการทำงานผ่านอัลกอริทึมเขาวงกตทั้งหมดเอง ฉันเห็นความซับซ้อนแบบเดียวกันพอที่จะจัดการกับที่ฉันคิดว่าสิ่งนี้จะช่วยฉันด้วยการต่อสู้บางอย่างที่ฉันมีกับCló
นี่เป็นข้อแก้ตัวที่ดีสำหรับฉันที่จะเล่นกับ Clojurescript และ OM เพื่อสร้างจอแสดงผลแบบไดนามิกที่แสดงอัลกอริทึมการสร้างเขาวงกตในการดำเนินการโดยเคลื่อนไหวการไหลของอัลกอริทึมเมื่อพวกเขาประมวลผลเขาวงกต
Snergly: run and print a maze generation algorithm.
Usage: lein run [options] algorithm
Options:
-c, --cell-size PIXELS 10 Size of maze cells. Ignored when rendering as text.
-d, --distances START Display result maze with distance labels from a starting cell (e.g., 2,2).
-h, --help
-l, --longest Show the longest path through the maze.
-o, --output FILENAME Write output to an image file (format defined by extension)
-p, --path-to END Result maze should show the path from START to END (requires -d).
-s, --size DIMENS [5 5] Grid size (e.g. 5 or 8x5)
Algorithms:
aldous-broder
binary-tree
hunt-and-kill
sidewinder
wilsons
all
เพื่อให้สภาพแวดล้อมการพัฒนาแบบโต้ตอบดำเนินการ:
lein run -m clojure.main script/figwheel.clj
และเปิดเบราว์เซอร์ของคุณที่ LocalHost: 3449 สิ่งนี้จะรวบรวมอัตโนมัติและส่งการเปลี่ยนแปลงทั้งหมดไปยังเบราว์เซอร์โดยไม่จำเป็นต้องโหลดซ้ำ หลังจากกระบวนการรวบรวมเสร็จสมบูรณ์คุณจะได้รับการเชื่อมต่อเบราว์เซอร์ วิธีที่ง่ายในการลองคือ:
(js/alert "Am I connected?")
และคุณควรเห็นการแจ้งเตือนในหน้าต่างเบราว์เซอร์
เพื่อทำความสะอาดไฟล์ที่รวบรวมทั้งหมด:
lein clean
เพื่อสร้างงานสร้างการผลิต:
lein cljsbuild once min
และเปิดเบราว์เซอร์ของคุณใน resources/public/index.html คุณจะไม่ได้รับการโหลดสดใหม่หรืออีกครั้ง
ลิขสิทธิ์© 2015 Glenn Vanderburg
แจกจ่ายภายใต้ใบอนุญาตสาธารณะ Eclipse ไม่ว่าจะเป็นเวอร์ชัน 1.0 หรือ (ตามตัวเลือกของคุณ) เวอร์ชันใด ๆ ในภายหลัง