Persistent Homology and its applications