คำถามติดแท็ก spanning-trees

7
ต้นไม้ทอดต่ำสุดเทียบกับเส้นทางที่สั้นที่สุด
ความแตกต่างระหว่างอัลกอริทึม Spanning Tree ขั้นต่ำและอัลกอริธึมพา ธ ที่สั้นที่สุดคืออะไร ในคลาสโครงสร้างข้อมูลของฉันเราครอบคลุมอัลกอริธึมแผนผังต้นไม้ขั้นต่ำสองอัน (Prim's และ Kruskal's) และอัลกอริธึมพา ธ สั้นที่สุด (Dijkstra's) Spanning Tree ขั้นต่ำเป็นแผนผังในกราฟที่ครอบคลุมทุกจุดยอดและน้ำหนักรวมของต้นไม้น้อยที่สุด เส้นทางที่สั้นที่สุดนั้นค่อนข้างชัดเจนมันเป็นเส้นทางที่สั้นที่สุดจากจุดสุดยอดหนึ่งไปอีกจุดหนึ่ง สิ่งที่ฉันไม่เข้าใจคือเนื่องจากต้นไม้ที่สแปนนิ่งขั้นต่ำมีน้ำหนักรวมเพียงเล็กน้อยเส้นทางในต้นไม้จะเป็นเส้นทางที่สั้นที่สุดหรือไม่ ใครช่วยอธิบายสิ่งที่ฉันหายไปได้บ้าง ความช่วยเหลือใด ๆ ที่ชื่นชม

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

3
ต้นไม้ที่ขยายครอบคลุมขั้นต่ำสำหรับกราฟจะไม่ซ้ำกันเมื่อใด
กำหนด weighted, กราฟไม่มีทิศทาง G: ซึ่งเงื่อนไขต้องถือเพื่อให้ความจริงว่ามีหลายขั้นต่ำต้นไม้ทอดของ G? ฉันรู้ว่า MST นั้นไม่เหมือนใครเมื่อตุ้มน้ำหนักทั้งหมดนั้นแตกต่างกัน แต่คุณไม่สามารถย้อนกลับข้อความนี้ได้ หากมี muliple edge ที่มีน้ำหนักเท่ากันในกราฟอาจมี MST หลายตัว แต่อาจมีเพียงอันเดียว: ในตัวอย่างนี้กราฟทางด้านซ้ายมี MST ที่ไม่ซ้ำกัน แต่อันที่ถูกต้องไม่มี สิ่งที่ใกล้เคียงที่สุดที่ฉันจะได้รับในการค้นหาเงื่อนไขสำหรับความไม่เป็นเอกลักษณ์ของ MST คือ: พิจารณารอบที่ไม่มีลำตัวทั้งหมด (รอบที่ไม่มีรอบอื่น ๆ ) ในกราฟ G หากในรอบใด ๆ เหล่านี้ขอบที่มีน้ำหนักสูงสุดมีอยู่หลายครั้งกราฟจะไม่มีต้นไม้ทอดขั้นต่ำที่ไม่ซ้ำกัน ความคิดของฉันคือสำหรับรอบเช่นนี้ ด้วย n จุดยอดคุณสามารถแยกขอบด้านใดด้านหนึ่งออกและยังคงมีจุดเชื่อมต่อทั้งหมด ดังนั้นคุณมีทางเลือกมากมายในการลบขอบด้วยน้ำหนักสูงสุดเพื่อรับ MST ดังนั้น MST จึงไม่ซ้ำกัน อย่างไรก็ตามฉันมาพร้อมกับตัวอย่างนี้: คุณจะเห็นว่ากราฟนี้มีวัฏจักรที่เหมาะกับสภาพของฉัน: (E, F, G, H)แต่เท่าที่ฉันเห็นต้นไม้สแปนนิ่งขั้นต่ำนั้นไม่เหมือนใคร: ดังนั้นดูเหมือนว่าสภาพของฉันไม่ถูกต้อง (หรืออาจไม่ถูกต้องสมบูรณ์) …

2
ต้นไม้ที่ทอดข้ามขั้นต่ำของกราฟถ่วงน้ำหนักมีจำนวนขอบเท่ากันกับน้ำหนักที่กำหนดหรือไม่?
หากกราฟถ่วงน้ำหนักมีต้นไม้ทอดต่ำสุดสองแบบและว่าเป็นจริงที่ขอบในจำนวนขอบในมีน้ำหนักเท่ากับ (รวมถึงเอง) เท่ากับจำนวนขอบในมีน้ำหนักเท่ากันกับ ? หากข้อความนั้นเป็นจริงเราจะพิสูจน์ได้อย่างไรT 1 = ( V 1 , E 1 ) T 2 = ( V 2 , E 2 ) e E 1 E 1 e e E 2 eGGGT1=(V1,E1)T1=(V1,E1)T_1 = (V_1, E_1)T2=(V2,E2)T2=(V2,E2)T_2 = (V_2, E_2)eeeE1E1E_1E1E1E_1eeeeeeE2E2E_2eee

4
กราฟมีต้นไม้สองสามครั้งที่แตกต่างกันเล็กน้อย?
ฉันกำลังพยายามหาวิธีที่มีประสิทธิภาพในการตรวจสอบว่ากราฟที่ระบุ G มีต้นไม้ทอดข้ามน้อยที่สุดสองแบบหรือไม่ ฉันกำลังพยายามหาวิธีในการตรวจสอบว่ามีต้นไม้ที่ขยายเล็ก ๆ น้อย ๆ 3 แบบหรือไม่ โซลูชันไร้เดียงสาที่ฉันคิดว่ากำลังเรียกใช้อัลกอริทึมของ Kruskal เพียงครั้งเดียวและค้นหาน้ำหนักรวมของต้นไม้ที่ทอดน้อยที่สุด จากนั้นนำขอบออกจากกราฟและเรียกใช้อัลกอริทึมของ Kruskal อีกครั้งและตรวจสอบว่าน้ำหนักของต้นไม้ใหม่นั้นเป็นน้ำหนักของต้นไม้ที่ขยายเล็กสุดดั้งเดิมหรือไม่และสำหรับแต่ละขอบของกราฟ รันไทม์คือ O (| V || E | log | V |) ซึ่งไม่ดีเลยและฉันคิดว่ามีวิธีที่ดีกว่าที่จะทำ ข้อเสนอแนะใด ๆ ที่จะเป็นประโยชน์ขอบคุณล่วงหน้า

2
เหตุใดปัญหา spanning tree ของ k-bounded NP-complete
-bounded ทอดปัญหาต้นไม้ที่คุณต้อง undirected กราฟและคุณจะต้องตัดสินใจหรือไม่ก็มีต้นไม้ทอดเช่นกันว่าจุดสุดยอดมีปริญญาอย่างมากที่สุดkkkkG(V,E)G(V,E)G(V,E)kkk ฉันรู้ว่าสำหรับกรณีนี่คือปัญหาเส้นทางมิลโตเนียน แต่ฉันมีปัญหากับกรณีที่ 2 ฉันพยายามคิดในแง่ที่ว่าคุณสามารถเพิ่มโหนดเพิ่มเติมลงในต้นไม้ที่ทอดที่มีอยู่ซึ่งและอาจเป็นเพราะฐานเป็น NP ที่สมบูรณ์การเพิ่มสิ่งต่าง ๆ จะทำให้มันสมบูรณ์ - NP แต่ดูเหมือนจะไม่ ขวา. ฉันเรียน CS ด้วยตนเองและมีปัญหากับทฤษฎีดังนั้นความช่วยเหลือใด ๆ จะได้รับการชื่นชม!k=2k=2k=2k>2k>2k>2k=2k=2k=2

2
Minimal Spanning Tree พร้อมพารามิเตอร์น้ำหนักสองเท่า
พิจารณากราฟE) ขอบแต่ละมีสองน้ำหนักและB_eค้นหาต้นไม้ทอดที่ช่วยลดสินค้าขวา) อัลกอริทึมควรทำงานในเวลาพหุนามเกี่ยวกับ.G(V,E)G(V,E)G(V,E)A e B e ( ∑ e ∈ T A e ) ( ∑ e ∈ T B e ) | V | , | E |eeeAeAeA_eBeBeB_e(∑e∈TAe)(∑e∈TBe)(∑e∈TAe)(∑e∈TBe)\left(\sum_{e \in T}{A_e}\right)\left(\sum_{e \in T}{B_e}\right)|V|,|E||V|,|E||V|, |E| ฉันคิดว่ามันยากที่จะปรับแต่งอัลกอริธึมดั้งเดิมใด ๆ บนต้นไม้ที่ทอด (Kruskal, Prim, Edge-Deletion) วิธีแก้ปัญหา คำใบ้ใด ๆ

1
การแยกประเภทการปรับแต่ง
ที่ทำงานฉันได้รับมอบหมายให้อนุมานข้อมูลบางประเภทเกี่ยวกับภาษาแบบไดนามิก ฉันเขียนลำดับของข้อความไปยังletนิพจน์ที่ซ้อนกันเช่น: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then { T; Z } else { F; Z } เนื่องจากฉันเริ่มต้นจากข้อมูลประเภททั่วไปและพยายามอนุมานประเภทที่เฉพาะเจาะจงมากขึ้นตัวเลือกที่เป็นธรรมชาติคือประเภทการปรับแต่ง ตัวอย่างเช่นตัวดำเนินการตามเงื่อนไขส่งคืนการรวมของประเภทของสาขาที่เป็นจริงและเท็จ …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

1
การวิเคราะห์ที่เข้มงวดขึ้นของอัลกอริทึมของBorůvkaที่ถูกแก้ไข
อัลกอริทึมของBorůvkaเป็นหนึ่งในอัลกอริธึมมาตรฐานสำหรับการคำนวณทรีสแปนนิ่งขั้นต่ำสำหรับกราฟด้วยmG=(V,E)G=(V,E)G = (V,E)|V|=n,|E|=m|V|=n,|E|=m|V| = n, |E| = m รหัสหลอกคือ: MST T = empty tree Begin with each vertex as a component While number of components > 1 For each component c let e = minimum edge out of component c if e is not in T add e to T …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.