Algoritmos e estruturas de dados formam o núcleo da ciência da computação, sendo os componentes básicos de qualquer software. Aprender como programar computadores está intimamente ligado a algoritmos, já que programas são formulações concretas de algoritm