Publicado em 12-12-2023
·
1 minutos de leitura
O problema do dia 6 do Advent of Code desse ano pode ser resolvido usando matemática. Então resolvi testando o SymPy e ver o quanto ele facilita nas análises e contas. O resultado encontra-se no seguinte notebook (que também pode ser visualizado aqui).
Publicado em 05-03-2023
·
6 minutos de leitura
No décimo dia do Advent of Code de 2022 tem um problema interessante para discutir sobre divisão de responsabilidades de funções geradoras.
Publicado em 14-02-2023
·
8 minutos de leitura
No oitavo dia do Advent of Code de 2022 tem um problema interessante para discutir sobre o termo constante na complexidade de um algoritmo.
Publicado em 12-12-2022
·
4 minutos de leitura
O sexto dia do Advent of Code deste ano tem um problema interessante para discutir sobre otimização do algoritmo e utilização de estruturas de dados.
Publicado em 06-12-2022
·
5 minutos de leitura
Terceiro dia do Advent of Code deste ano, o problema desse dia é bastante interessante para discutir sobre a complexidade de operações em estruturas de dados.
Publicado em 02-12-2022
·
5 minutos de leitura
Segundo dia do Advent of Code deste ano, na questão de optimização do algoritmo, ele tem bastante semelhança com o dia 1 sobre tratar a entrada, mas tem uma questão que acredito que vale uma observação no seu processamento.
Publicado em 01-12-2022
·
7 minutos de leitura
Começou o Advent of Code deste ano, que embora tenha uma competição de quem resolve primeiro os problemas propostos, também é uma oportunidade para se desafiar e treinar o entendimento e a resolução de problemas. Porém aqui não quero discutir como resolver os problemas, mas sim pensar sobre os algoritmos usados para resolvê-los.
Publicado em 17-10-2022
·
5 minutos de leitura
Recentemente li o texto do Maycon Alves, "3 algoritmos para você sua lógica", onde são apresentados 3 problemas para treinar a lógica e escrita de algoritmos: cálculo de fatorial, identificar se um número é primo, e calcular os valores da sequência de Fibonacci. São problemas interessantes, e após resolvê-los, pode-se fazer outras perguntas que levam a um entendimento mais profundo desses algoritmos. Eu recomendo que leiam o texto do Maycon primeiro e tentem implementar uma solução para esses problemas propostos, e com isso feito, vamos discutir um pouco sobre eles.
Publicado em 08-05-2021
·
5 minutos de leitura
Seguindo com a série, chegou a hora de discutir sobre encapsulamento, ou seja, ocultar detalhes de implementação de uma classe do resto do código. Em algumas linguagens de programação isso é feito utilizando protected
ou private
, e às vezes o acesso aos atributos é feito através de funções getters e setters. Nesse texto vamos ver como o Python lida com essas questões.
Publicado em 01-05-2021
·
5 minutos de leitura
Na discussão sobre herança e mixins foram criadas várias classes, como Autenticavel
e AutenticavelComRegistro
que adicionam funcionalidades a outras classes e implementavam tudo o que precisavam para seu funcionamento. Entretanto podem existir casos em que não seja possível implementar todas as funções na própria classe, deixando com que as classes que a estende implemente essas funções. Uma forma de fazer isso é través das ABC (abstract base classes, ou classes base abstratas).