new data structure to support weigthed graph add 2 concrete implementaion of graph directed and undirected