การสำรวจเส้นทางล่วงหน้าของต้นไม้สองต้นสามารถเหมือนกันได้แม้ว่าต้นไม้นั้นจะแตกต่างกันหรือไม่?


11

คำถามนี้ค่อนข้างอธิบายได้ว่าพวกเขาทำได้ แต่ไม่แสดงตัวอย่างใด ๆ ของการมีต้นไม้สองต้นที่แตกต่างกันซึ่งมีการสำรวจเส้นทางล่วงหน้าที่เหมือนกัน

มีการกล่าวถึงด้วยว่าการสำรวจเส้นทางตามลำดับของต้นไม้สองต้นที่แตกต่างกันอาจเหมือนกันแม้ว่าจะมีโครงสร้างที่แตกต่างกัน มีตัวอย่างของสิ่งนี้หรือไม่?


2
นี่คือแบบฝึกหัดระดับเริ่มต้น คุณลองทำอะไรและคุณติดอยู่ที่ไหน
กราฟิลส์

1
แม้ว่าคุณจะมีไปรษณียบัตรนอกเหนือจากการสั่งซื้อล่วงหน้าการสำรวจเส้นทางคุณยังสามารถรับต้นไม้ที่แตกต่างกันได้ เหตุใดต้นไม้จึงไม่สามารถเกิดขึ้นได้โดยเฉพาะกับการส่ง preorder และ postorder คุณสามารถค้นหาตัวอย่างในการสั่งซื้อในจากการเป็นตัวแทนในการสั่งซื้อเพื่อให้ต้นไม้ไบนารี ที่เกี่ยวข้อง / ซ้ำกัน: การรวมกันของลำดับก่อนหลังโพสต์และการสั่งซื้อที่ไม่ซ้ำกัน?
Dukeling

คำตอบ:


28

ตัวอย่างต้นไม้(ภาพ) :

     A:                 B:
     ‾‾                 ‾‾
     1                  1
    /                  / \
   2                  2   3
  /  
 3   

นี่คือตัวอย่างที่เหมาะกับสถานการณ์ของคุณค่ารากของรากคือ 1 มีลูกซ้ายที่มีค่า 2 และลูกซ้ายของเขามีลูกซ้ายด้วยค่า 3

ค่ารูทของทรี B คือ 1 มีลูกซ้ายที่มีค่า 2 และลูกขวามีค่า 3

ในทั้งสองกรณี Traversal ของการสั่งซื้อล่วงหน้าคือ 1-> 2-> 3


11
นี่เป็นกรณีเฉพาะของกฎทั่วไปที่สำหรับต้นไม้ใด ๆ ของคำสั่งมีต้นไม้เชิงเส้นของเด็กที่เหลือ (หรือขวาเท่านั้น) ที่มีลำดับเดียวกัน
Dancrumb

5
@Dancrumb ซึ่งจะเป็นกรณีเฉพาะของกฎทั่วไปที่สำหรับต้นไม้ใด ๆ ที่มีโหนด N และสำหรับรูปร่างต้นไม้ใด ๆ (= ต้นไม้ที่ไม่มีป้ายกำกับ) กับโหนด N มีวิธีการติดฉลากหลังเพื่อที่จะแบ่งปัน traversal ด้วย อดีต. สิ่งนี้มีไว้สำหรับการสำรวจเส้นทางใด ๆ (การเข้าชมล่วงหน้า / โพสต์ / ตามลำดับ)
Chi

8

nn1,2,...,n

ซึ่งหมายความว่าเราสามารถตั้งชื่อโหนดของโครงสร้างต้นไม้ไบนารีใด ๆ เพื่อที่จะสร้างลำดับการสั่งซื้อล่วงหน้าเช่นเดียวกับต้นไม้อื่นที่กำหนด

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


8

การนับการโต้แย้ง

nnTHn=(2n)!/(n!(n+1)!).

    o         o         o         o         o
   /         /         / \         \         \
  o         o         o   o         o         o      .
 /           \                     /           \
o             o                   o             o

n!

(2n)!(n+1)!=2n(2n-1)...(n+2).

ในทางตรงกันข้ามมีเพียง n!nn!n>1n>1n


1

เกี่ยวกับคำถามที่สองของคุณใช่ต้นไม้สองต้นที่มีโครงสร้างแตกต่างกันสามารถมีการข้ามผ่าน inorder ที่เหมือนกัน ตัวอย่างหนึ่งคือ:

     A:                 B:

     1                  2
    / \                  \
   2   3                  1
                           \
                            3

การเคลื่อนที่แบบ Inorder ของต้นไม้ทั้งสองเหมือนกัน 2 -> 1 -> 3

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.