O Bootcamp de Programação Competitiva da Polibits ensina o básico de C++ para as principais competições de computação, como a Olimpíada Brasileira de Informática (OBI) e a International Collegiate Programming Contest (ACM-ICPC)
Autores:
- Henrique Eduardo: @henriqueedu2001
Na pasta desse repositório, você tem um arquivo main.cpp
, com um template básico de um programa em C++. Você pode escrever seus códigos nele.
Ao terminar de escrever o programa, abra o terminal do vs code. Certifique-se de que você está na pasta bootcamp2024/
.
Para executar o programa, você deve antes compilá-lo:
g++ -o main main.cpp
Em seguida, execute-o pelo terminal
./main
Resumo: conceitos básicos de programação e da linguagem C++
- Entradas e saídas
- Tipos de variáveis
- Operações aritméticas e lógicas
- Estruturas condicionais if e else
- Laços while, for e do while
- Funções
- Vetores
- Matrizes
Resumo: estudo de vetores, pilhas, filas, dentre outros, com a biblioteca STL
- Vetores dinâmicos da STL
- Pilhas (STL)
- Filas (STL)
- Listas Encadeadas (STL)
- Algoritmos de ordenação: Selection Sort, Bubble Sort, Insertion Sort
- Conceito de complexidade
- Algoritmos de busca: busca linear, busca binária
- Gulosos
- Backtracking
- Dinamic programming
- Árvores e suas representações
- Busca em árvores
- Árvores de busca binária
- Grafos e suas representações:
- Grafos direcionados e não direcionados
- Busca em largura (BFS)
- Busca em profundidade (DFS)
- Dijkstra
Aula 1: Introdução
- Apresentação da Polibits
- Introdução às competições de programação
- Conceitos básicos de C++
- Tipos de dados, operadores e entrada/saída básica
- Exercícios práticos
Aula 2: Estruturas de Controle e Loops
- Condicional if-else e switch-case
- Loops while, do-while e for
- Utilização de break e continue
- Exercícios práticos
Aula 3: Vetores e Matrizes
- Vetores
- Matrizes
- Strings
- Exercícios práticos
Aula 4: Biblioteca STL
- Vetores dinâmicos (STL)
- Pilhas (stacks)
- Filas (queues)
- Exercícios práticos
Aula 5: Biblioteca STL
- Listas encadeadas (Linked Lists)
- Conjuntos (Sets)
- Exercícios práticos
Aula 6: Algoritmos de Ordenação
- Algoritmos de ordenação: Selection Sort, Bubble Sort, Insertion Sort
- Algoritmos de ordenação eficientes: Quick Sort, Merge Sort
- Conceito de complexidade
- Exercícios práticos
Aula 7: Algoritmos de Busca
- Busca linear
- Busca binária
- Buscas em strings
Aula 7: Algoritmos Especiais
- Gulosos
- Backtracking
- Exercícios práticos
Aula 8: Árvores
- Árvores e suas representações
- Busca em árvores
- Árvores de busca binária
Aula 9: Grafos
- Introdução aos grafos e suas representações
- Grafos direcionados e não direcionados
- Implementação de grafos em C++ utilizando matrizes de adjacência
- Exercícios práticos
Aula 10: Buscas em Grafos
- Algoritmos em grafos: busca em largura (BFS) e busca em profundidade (DFS)
- Aplicação de BFS e DFS em problemas de grafos
- Dijkstra
- Exercícios práticos