Vetor ordenado - Python / Machine Learning

Olá pessoal, tudo bem?

Estou fazendo um curso pela udemy sobre IA, o professor está nos mostrando sobre vetores ordenados pois facilita a busca do algoritmo, mas ele escreve várias funções para ordenar o vetor, sendo que em python tem o metodo sort e sorted, alguém que já conhece da área pode me explicar qual é a maneira correta? Realmente é melhor fazer essas funções ou só utilizar os métodos está bom.

Para uso geral, provavelmente o uso de funções já existentes seja o suficiente. Entretanto, nem sempre essa é a melhor opção, então ao menos saber que existem alternativas é importante.

No caso desse curso, depende do objetivo do professor ao escrever essas funções, em vez de usar sort/sorted. Imagino que ele faça isso para mostrar como funciona as operações de ordenação internamente, ou as implementações que ele está mostrando tem diferenças específicas pro caso de uso dele (IA). Essas são lições comuns quando se estuda algoritmos. Por exemplo, quando fiz Ciência da Computação, estudei vários algoritmos de ordenação (bubble sort, selection sort, merge sort, quicksort, etc). Todos eles tem casos de uso específicos, e quase todas as linguagens modernas tem implementações prontas pra uso (comumente quicksort, mas isso varia).

Note que a Udemy tem área de perguntas, então seria o caso de você perguntar diretamente ao instrutor o objetivo dessas lições (se ele não explicou em algum dos vídeos).

Abraço.

3 curtidas

Só por curiosidade, segundo a documentação, em Python é usado o algoritmo Timsort.

Aqui tem uma comparação entre ele e o Quicksort.

2 curtidas