The number of vehicles on the roads is rapidly increasing year by year. This huge volume of vehicles leads to higher accidents' rates and more congested roads. Therefore, there is a severe need to exploit new technologies to minimize the fatalities in the streets and increase the traffic safety. The Intelligent Transportation Systems (ITS) aims at increasing the roads' safety and enhancing the roads' efficiency. ITS have different applications, such as overtaking assistance, animal detection, road enforcement, Collision avoidance, etc. There are several forms of networks that are designed for intelligent transport applications. The main forms are the Mobile Ad hoc Networks (MANET) and Vehicular Ad hoc Networks (VANET). Messages in these forms of networks are broadcasted among the nodes, however a number of challenges appear to affect reliable broadcasts. In order to minimize the flooding caused by the network inefficient broadcasting, several clustering algorithms are designed. Clustering is a technique to group the nodes that have similarities according to some criteria together. Each algorithm has specific criteria that play a critical role in building a stable cluster. Through this paper, several clustering algorithms are presented and classified according to different categories. Also, main drawbacks in each algorithm are highlighted in order to help the researchers for further improvements and developments.