edges as 1D array
edges as 1D array
2D arrays
todo adj matrix
merge