A sparse linear algebra library implementing may of the ideas from the GraphBLAS Forum in Go.
Supports float32 and float64 types
array := [][]float64{
[]float64{0, 0, 0, 1, 0, 0, 0},
[]float64{1, 0, 0, 0, 0, 0, 0},
[]float64{0, 0, 0, 1, 0, 1, 1},
[]float64{1, 0, 0, 0, 0, 0, 1},
[]float64{0, 1, 0, 0, 0, 0, 1},
[]float64{0, 0, 1, 0, 1, 0, 0},
[]float64{0, 1, 0, 0, 0, 0, 0},
}
g := f64.NewDenseMatrixFromArray(array)
atx := breadthfirst.Search(context.Background(), g, 3, func(i f64.Vector) bool {
return i.AtVec(5) == 1
})