Géographie urbainealt=photographie d'habitations depuis un toit du Caire.|vignette|Un paysage urbain, au Caire. La géographie urbaine est une branche de la géographie humaine dont l'objet est l'étude géographique du phénomène urbain. C'est donc à la fois l'étude de l'organisation spatiale de la ville et de l'organisation des villes entre elles en réseaux urbains. Elle étudie donc des thèmes comme l'urbanisation, les paysages urbains, les réseaux urbains, la situation, le site d'une ville et la ségrégation des populations en son sein.
Urbanismevignette|upright=1.0|Gratte-ciel vus depuis la tour CN à Toronto (Canada). vignette|upright=1.0|Vue d'un quartier de Pachuca (Mexique). L'urbanisme est l'ensemble des sciences, des techniques et des arts relatifs à l'organisation et à l'aménagement des espaces urbains. Ce projet peut être sous-tendu par une volonté d'assurer le bien-être de l'homme et d'améliorer les rapports sociaux en préservant l'environnement. Les professionnels qui exercent ce métier sont des urbanistes.
Histoire urbaineL’histoire urbaine est une discipline de l'histoire qui a pour champ principal d'étude l'organisation historique des villes, et les différentes évolutions sociales que celle-ci a connues. L'histoire urbaine touche à des domaines comme l'histoire sociale, la sociologie urbaine, l'histoire économique, la géographie urbaine, l'archéologie, etc. Elle s'appuie notamment sur des monographies locales. La période Néolithique s'accompagne d'un modèle de subsistance des groupes humains fondé sur l'agriculture et l'élevage.
Classe de complexitéEn informatique théorique, et plus précisément en théorie de la complexité, une classe de complexité est un ensemble de problèmes algorithmiques dont la résolution nécessite la même quantité d'une certaine ressource. Une classe est souvent définie comme l'ensemble de tous les problèmes qui peuvent être résolus sur un modèle de calcul M, utilisant une quantité de ressources du type R, où n, est la taille de l'entrée. Les classes les plus usuelles sont celles définies sur des machines de Turing, avec des contraintes de temps de calcul ou d'espace.
Computational complexityIn computer science, the computational complexity or simply complexity of an algorithm is the amount of resources required to run it. Particular focus is given to computation time (generally measured by the number of needed elementary operations) and memory storage requirements. The complexity of a problem is the complexity of the best algorithms that allow solving the problem. The study of the complexity of explicitly given algorithms is called analysis of algorithms, while the study of the complexity of problems is called computational complexity theory.