⍝ Spanning tree paths:
⍝
⍝      Graph "a".
⍝    ┌─────1←────┐   5 vertices: 1 2 3 4 5
⍝    │     │     │
⍝    ↓     ↓     │   8 edges:    1→2  1→3
⍝    2←───→3────→4               2→3
⍝          ↑     │               3→2  3→4
⍝          │     ↓               4→1  4→5
⍝          └─────5               5→3

    a←(2 3)(3)(2 4)(1 5)(3)         ⍝ simple origin-1 graph

    trees←a∘span¨⍳⍴a
    trees
┌──────────┬──────────┬──────────┬──────────┬──────────┐
│¯1 1 1 3 4│4 ¯1 2 3 4│4 3 ¯1 3 4│4 1 5 ¯1 4│4 3 5 3 ¯1│
└──────────┴──────────┴──────────┴──────────┴──────────┘

    stpaths¨trees
┌─────────────────────────┬─────────────────────────────┬───────────────────────┬───────────────────────┬───────────────────────────┐
│┌─┬───┬───┬─────┬───────┐│┌───────┬─┬───┬─────┬───────┐│┌─────┬───┬─┬───┬─────┐│┌───┬─────┬─────┬─┬───┐│┌───────┬─────┬───┬─────┬─┐│
││1│1 2│1 3│1 3 4│1 3 4 5│││2 3 4 1│2│2 3│2 3 4│2 3 4 5│││3 4 1│3 2│3│3 4│3 4 5│││4 1│4 1 2│4 5 3│4│4 5│││5 3 4 1│5 3 2│5 3│5 3 4│5││
│└─┴───┴───┴─────┴───────┘│└───────┴─┴───┴─────┴───────┘│└─────┴───┴─┴───┴─────┘│└───┴─────┴─────┴─┴───┘│└───────┴─────┴───┴─────┴─┘│
└─────────────────────────┴─────────────────────────────┴───────────────────────┴───────────────────────┴───────────────────────────┘

Back to: code

Back to: Workspaces