Spanning Tree

Context: FIT1058_MOC, FIT2004_MOC · a tree subgraph reaching every vertex · a minimal connecting skeleton · cost-optimised into a Minimum Spanning Tree by Kruskal’s Greedy Algorithm and Prim’s Algorithm

Quick Revision

  • 🎯 Objective: a tree subgraph containing every vertex ➔ a minimal connected skeleton.
  • 📦 Core Components: delete-edges or add-edges construction ➔ edges.
  • ⚡ Key Constraint: every connected graph has one; disconnected ⟹ spanning forest.

📝 Core

1. The Spanning Tree

  • Definition ➔ a Subgraph that is a Tree and includes every vertex.
  • Minimal connected ➔ connected, but deleting any edge disconnects it.
  • Edges ➔ exactly .

2. Two Characterisations of

  • Minimum to connect ➔ no set of fewer than edges spans all vertices.
  • Maximum without a cycle ➔ adding any further edge of closes a cycle.
  • Both true simultaneously ➔ a spanning tree sits exactly on the boundary between too few edges to connect and enough edges to loop.

3. Two Constructions

  • Delete ➔ remove edges whose removal keeps it connected, until none can be.
  • Add ➔ add edges that create no cycle, until none can be (partial = Forest).
  • Both succeed ➔ every connected graph has a spanning tree.
  • Both scale up ➔ weighting the add-rule by cheapest first gives Kruskal’s Greedy Algorithm; weighting the delete-rule by dearest first gives reverse-delete ➔ Minimum Spanning Tree §5.

4. Multiplicity

  • Many ➔ different orders usually give different spanning trees.
  • Disconnected ➔ a spanning forest, one tree per component.
  • Weighted case ➔ minimising over all of them is the Minimum Spanning Tree problem; the minimum cost is unique, the tree still is not.

Key identities:

When It Flips: minimality is the point — drop every redundant edge for the cheapest connectivity ( edges). Kruskal's Greedy Algorithm adds costs, choosing a minimum-cost spanning tree.

📊 Exam Execution Trace

Manual Execution Trace

Add edges to (4-cycle + diagonal ):

Step / StateEdgeCycle?In tree?
0 (Init)———
1no✅
2no✅
3no✅ (spans, )
4yesrejected

⚠️ Common Mistakes

  • 💡 Add-method stays a forest ➔ acyclic throughout, connected only at the end; the final tree has edges (minimum to connect all).
  • 💡 Counting edges to compare spanning trees ➔ every spanning tree of has the same edges, so only the weights can discriminate ➔ Minimum Spanning Tree.

🧠 Active Recall