⍝ Spanning tree for weighted graph ⍺ from ⍵:

    Alpha ##.test'wGraphs'

    ⍝   ┌───2───B───2───┐
    ⍝   │               │
    ⍝   ↑               ↓
    ⍝   │               │
    ⍝   A───2──→C───1──→E
    ⍝   │               │
    ⍝   ↓               ↑
    ⍝   │               │
    ⍝   └───2───D───2───┘

    md2←,¨↑((2 3 4) 5 5 5 ⍬) ((2 2 2)2 1 2 ⍬)
          ⍝  A      B C D E /  A     B C D E

    md2∘ wspan¨⍳⊃⌽⍴md2
┌──────────┬─────────────┬─────────────┬─────────────┬──────────────┐
│¯1 1 1 1 3│¯1 ¯1 ¯1 ¯1 2│¯1 ¯1 ¯1 ¯1 3│¯1 ¯1 ¯1 ¯1 4│¯1 ¯1 ¯1 ¯1 ¯1│
└──────────┴─────────────┴─────────────┴─────────────┴──────────────┘

Back to: code

Back to: Workspaces