Simple android app that displays undirected weighted graph. When 2 vertices are clicked, finds and shows shortest path between them (Dijkstra algo with binary heap - O(E logV)). Uses minimal MVP structure (see for example http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/ and http://www.objc.io/issues/13-architecture/viper/ for further reading)