Começando a programar em Python
  • Instalação do Python 3
  • Sintaxe básica do Python - Parte 1
  • Exercícios sobre a sintaxe da linguagem
  • Sintaxe básica do Python - Parte 2
  • Exercícios sobre a sintaxe da linguagem
  • Sintaxe básica do Python - Parte 3
  • Exercícios sobre a sintaxe da linguagem
  • Programação Funcional com Python
  • Exercícios sobre programação funcional
  • Recursividade
  • Exercícios sobre recursividade
  • Manipulando listas
  • Exercícios sobre listas
  • Desempacotamento de sequências
  • Gerando números pseudo-aleatórios
  • Exercícios sobre o módulo random
  • Módulo math (funções matemáticas)
  • Criando módulos
  • Criando testes com unittest
  • Exercícios sobre o módulo unittest
  • Criando testes com pytest
  • Herança
  • Exercícios sobre herança
  • Encapsulamento de dados
  • Threads
  • Exercícios sobre threads
  • Interface gráfica com tkinter
  • Exercícios sobre o módulo tkinter
  • Introdução à construção de aplicações web com Bottle
  • Exercícios sobre o framework Bottle
  • Criando games com CodeSkulptor
Algoritmos e Estruturas de Dados
  • Pilha
  • Exercícios sobre pilha
  • Otimizando a pilha
  • Matrizes
  • Exercícios sobre matrizes
  • Fila
  • Exercícios sobre fila
  • Deque - Parte 1
  • Deque - Parte 2
  • Deque com o módulo collections.deque
  • Lista Ligada - Parte 1
  • Lista Ligada - Parte 2
  • Lista Ligada - Parte 3
  • Exercícios sobre lista ligada
  • Árvore Binária de Busca - Parte 1
  • Árvore Binária de Busca - Parte 2
  • Árvore Binária de Busca - Parte 3
  • Árvore Binária de Busca - Parte 4
  • Árvore Binária de Busca - Parte 5
  • Árvore Binária de Busca - Parte 6
  • Exercícios sobre árvore binária de busca
  • Fila de prioridades - Parte 1
  • Fila de prioridades - Parte 2
  • Heap Binária - Definição
  • Fila de prioridades com o módulo heapq
  • Exercícios sobre fila de prioridades
  • Tabela Hash - Definição
  • Tabela Hash com encadeamento externo
  • Dicionários
  • Exercícios sobre tabelas hash
  • Sets
  • Exercícios sobre conjuntos
  • Listas, tuplas, conjuntos e dicionários
  • Exercícios sobre listas, tuplas, conjuntos e dicionários
  • Análise assintótica
  • Exercícios sobre análise assintótica
  • Grafos - Definição
  • Exercícios sobre grafos
  • Grafos - Matriz de adjacência
  • Grafos - Lista de adjacência
  • Grafos - Busca em profundidade
  • Grafos - Busca em largura - Definição
  • Grafos - Busca em largura - Implementação
  • Exercícios sobre busca em grafos
  • Grafos com o módulo defaultdict
  • Programação dinâmica
  • Exercícios sobre programação dinâmica
  • Algoritmos gulosos
  • Algoritmo de Dijkstra - Definição
  • Algoritmo de Dijkstra - Implementação
  • Exercícios sobre o algoritmo de Dijkstra
  • Detectando ciclos em grafos
  • Backtracking - Definição
  • Backtracking - Implementação
  • Algoritmo de ordenação Bubble sort - Definição
  • Algoritmo de ordenação Bubble sort - Implementação
  • Algoritmo de ordenação Selection Sort - Definição
  • Algoritmo de ordenação Selection Sort - Implementação
  • Algoritmo de ordenação Insertion Sort - Definição
  • Algoritmo de ordenação Insertion Sort - Implementação
  • Algoritmo de ordenação Quick sort - Definição
  • Algoritmo de ordenação Quick sort - Implementação
  • Exercícios sobre algoritmos de ordenação
  • Função sort
  • Metaheurísticas: Simulated Annealing - Definição
  • Metaheurísticas: Simulated Annealing - Implementação
  • Problema do Caixeiro Viajante - Definição