Trilha de aprendizado

Algoritmos em C/C++

Busca, ordenação, recursão e truques com bits, implementados lado a lado em C e C++.

7 lições · 9 desafios

Começar a trilha →
  1. Lição 1 desafio Busca linear em C e C++ Nesta lição, você vai encontrar a posição de um valor em um array não ordenado com o algoritmo de busca linear.
  2. Lição 1 desafio Busca binária em C e C++ Nesta lição, você vai buscar em um array ordenado em tempo O(log n) com um laço escrito à mão em C e com std::lower_bound em C++.
  3. Lição 1 desafio Ordenação por bolha (bubble sort) em C e C++ Nesta lição, você vai implementar o bubble sort trocando repetidamente de lugar os pares vizinhos que estão fora de ordem.
  4. Lição 1 desafio Ordenação rápida (quick sort) em C e C++ Nesta lição, você vai implementar o quick sort particionando o array em torno de um elemento pivô (pivot).
  5. Lição 1 desafio Ordenação por intercalação (merge sort) em C e C++ Nesta lição, você vai implementar o merge sort com a estratégia de dividir para conquistar, que sempre roda em O(n log n).
  6. Lição 2 desafios Recursão e pilha de chamadas em C e C++ Nesta lição, você vai calcular o fatorial com uma função recursiva e entender o caso base e o custo de memória da recursão.
  7. Lição 2 desafios Manipulação de bits em C e C++ Nesta lição, você vai ligar, desligar, inverter e testar bits individuais de um inteiro para guardar vários estados liga/desliga.