Asimismo son necesarios conocimientos de estructuras de datos, incluyendo arrays, pilas, colas, listas enlazadas, árboles, montículos y colas de prioridad, conjuntos y grafos.