func (g *SimpleGraph) E() int {
	g.mutex.RLock()
	defer g.mutex.RUnlock()
	return g.e
}
E returns the number of edges in the SimpleGraph
package graph
import (
	"errors"
	"sync"
)
var (
	ErrVertexNotFound = errors.New("vertex not found")
	ErrSelfLoop = errors.New("self loops not permitted")
	ErrParallelEdge = errors.New("parallel edges are not permitted")
)
type SimpleGraph struct {
	mutex         sync.RWMutex
	adjacencyList map[interface{}]map[interface{}]struct{}
	v, e          int
}
func (g *SimpleGraph) V() int {
	g.mutex.RLock()
	defer g.mutex.RUnlock()
	return g.v
}