Calculate shortest path
Merge remote-tracking branch 'origin/ningjing' into ningjing

Conflicts:
	patterns/algrithm.test/gragh/test/ShortestPathTest.java
	patterns/algrithm/graph/Graph.java
	patterns/algrithm/graph/Vertex.java