สำหรับกราฟบางอันกระบวนการอัลกอริทึมการค้นหา DFS และ BFS ในลำดับเดียวกันโดยมีเงื่อนไขว่าพวกเขาทั้งคู่เริ่มต้นที่โหนดเดียวกัน สองตัวอย่างคือกราฟที่เป็นเส้นทางและกราฟที่มีรูปร่างเป็นรูปดาว (ต้นไม้ที่มีความลึกพร้อมจำนวนลูกโดยพลการ) มีวิธีในการจัดหมวดหมู่กราฟที่ตอบสนองคุณสมบัตินี้หรือไม่?
6
โปรดทราบว่าในทั้งสองกรณีนี้จะทำงานได้ก็ต่อเมื่อคุณเริ่มต้นที่โหนดที่ระบุ หากคุณเลือกโหนดกลางในเส้นทางที่มีความยาวตัวอย่างเช่นคุณจะได้รับลำดับที่แตกต่างจาก DFS และ BFS กลับมา
—
templatetypedef
มีความเป็นไปได้อื่น ๆ ที่น่าสนใจกว่าดาวหรือเส้นทางหรือไม่? เมื่อมองดูครั้งแรกดูเหมือนว่าหากคุณมีจุดสุดยอดที่มีทั้งพี่น้องและเด็กคุณจะได้รับการสำรวจเส้นทางที่แตกต่างกันทันทีดังนั้นไม่มีจุดสุดยอดมีลูก (นอกเหนือจากราก) และคุณได้ดาวหรือไม่มีจุดยอดมีพี่น้อง และคุณได้รับเส้นทาง ฉันเดาว่ากลุ่มคนใช้งานได้ แต่มันมีทั้งดาวและเส้นทางฝังอยู่
—
ลุคแมททีสัน
@LukeMathieson ฉันกำลังคิดถึงดาวที่มีลูกที่ถนัดที่สุดซึ่งเป็นรากของดาวดวงอื่น ฉันเดาว่ามันก็ใช้ได้เหมือนกัน เรายังสามารถทำคำสั่งทั่วไป: ถ้าตอบสนองคุณสมบัติเมื่อเริ่มต้นการค้นหาที่โหนดv∈Vแล้วจึงไม่เป็นดาวที่มีเด็กขวาสุดvยิ่งไปกว่านั้นถ้าและเป็นไปตามคุณสมบัติและโหนดเป็นสิ่งสุดท้ายที่ประมวลผลในและคือตำแหน่งที่การค้นหาเริ่มต้นในจากนั้นเพิ่มขอบสะพานสร้างกราฟที่ตอบสนองคุณสมบัติ เปลี่ยนโดยยังทำงานผมคิดว่า= v G 1 G 2 v 1 G 1 v 2 G 2 ( v 1 , v 2 ) v 1 v 2
—
saadtaame
จุดที่ดีดังนั้นจึงมีองค์ประกอบเรียงลำดับแบบเวียนเกิดซ้ำซึ่งคุณสามารถระบุใบไม้ที่ถูกต้องของกราฟแรกด้วยรากที่สอง
—
Luke Mathieson
@LukeMathieson ดูเหมือนว่าคุณสามารถแก้ไขกรณีที่โหนดมีพี่น้องและเด็กโดยการเพิ่มขอบระหว่างเด็กและผู้ปกครองของโวลต์นี่คือข้อเสนอของฉัน: ให้กราฟE) , ถ้าเช่นนั้น , จากนั้นทรัพย์สินที่ถือสำหรับGขั้นตอนต่อไปคือการพิสูจน์หรือพิสูจน์ข้อเสนอนี้ v G = ( V , E ) ∀ x ∈ V ∃ y , z , w ∈ V ( y , x ) , ( z , y ) , ( x , w ) ∈ E ( x , z ) ∈ E
—
saadtaame