This paper presents a survey of Simultaneous Localization And Mapping (SLAM) algorithms for unmanned ground robots. SLAM is the process of creating a map of the environment, sometimes unknown a priori, while at the same time localizing the robot in the same map. The map could be one of different types i.e. metrical, topological, hybrid or semantic. In this paper, the classification of algorithms is done in three classes: (i) Metric map generating approaches, (ii) Qualitative map generating approaches, and (iii) Hybrid map generating approaches. SLAM algorithms for both static and dynamic environments have been surveyed. The algorithms in each class are further divided based on the techniques used. The survey in this paper presents the current state-of-the-art methods, including important landmark works reported in the literature.