อัลกอริธึมอะไรที่คุณจะใช้เพื่อค้นหาเส้นทางที่สั้นที่สุดของกราฟซึ่งฝังอยู่ในระนาบแบบยุคลิดซึ่งเส้นทางนั้นไม่ควรมีจุดตัดด้วยตนเอง (ในการฝัง)
ยกตัวอย่างเช่นในกราฟด้านล่างที่คุณต้องการจะไปจากที่ ) โดยปกติอัลกอริทึมอย่างอัลกอริทึมของ Dijkstra จะสร้างลำดับดังนี้:
กราฟเต็มรูปแบบ:
เส้นทางที่สั้นที่สุด:
เส้นทางที่ไม่ตัดกันสั้นที่สุด:
อย่างไรก็ตามเส้นทางนี้ตัดกันตัวเองบนระนาบแบบยุคลิดดังนั้นฉันต้องการอัลกอริทึมที่จะให้ลำดับที่ไม่ตัดกันสั้นที่สุดในกรณีนี้:
เส้นทางนี้ยาวกว่าเส้นทางที่สั้นที่สุด แต่เป็นเส้นทางที่ไม่ตัดกันสั้นที่สุด
มีอัลกอริทึม (มีประสิทธิภาพ) ที่สามารถทำได้หรือไม่