2024. A maneira que voce explicou o algoritmo foi espetacular. Depois que caiu no Python, aí infelizmente precisei parar porque preciso implementar em C puro. Parabéns pelo conteúdo
@pgdinamica6 ай бұрын
Obrigado! Quanto ao Python, eu sugiro pensar neste linguagem como uma forma de pseudo-código (escolhi ela com isso em mente). Os melhores livros de algoritmos na minha opinião (PapadiMitriou amzn.to/3wapAf0 e Cormen amzn.to/4dqPtrM) não se apegam a nenhuma linguagem específica e aprensentam pseudo-códigos. De todo modo, acredito que o teste que valida se você realmente entendeu o algoritmo é a capacidade de implementá-lo em qualquer linguagem de programação que você conheça simplesmente a partir das ideias, sem olhar códigos prontos. Bons estudos!
@criandoEdesenvolvendo6 ай бұрын
@@pgdinamica Obrigado pela dica, colega e professor. Continue com o bom trabalho em seu canal
@TheSantullo2 жыл бұрын
Só tenho a agradecer a esse canal que achei por acaso procurando uma dúvida da faculdade, em que algumas das aulas são ead com pouco conteúdo, parabéns pelo trabalho e pela ótima explicação, já virei inscrito!
@pgdinamica2 жыл бұрын
Seja bem-vindo!
@Luchkasz4 жыл бұрын
Tudo que eu precisava, uma playlist dahora sobre algoritmos de ordenação
@pgdinamica4 жыл бұрын
🤩🤩🤩
@pedemoleque8632 Жыл бұрын
sua playlist é muito completa! obrigada pelo esforço e parabéns!!!!!
@pgdinamica Жыл бұрын
Eu que agradeço! Fico feliz que esteja gostando :) bons estudos!
@rogeriomorais33343 жыл бұрын
Excelente, só não estuda quem não quer! Parabéns.
@pgdinamica3 жыл бұрын
Valeu!
@kevinvinicius13712 жыл бұрын
Utilizei recursividade para construir o algoritmo do Selection Sort: #== recursive algorithm ==# def selectionSortRecursive(list): if len(list) == 1: return list lowest = list[0] for n in range(len(list)): if list[n] < lowest: lowest = list[n] list[n] = list[0] list[0] = lowest ordered_list = [list[0]] + selectionSortRecursive(list[1:]) return ordered_list
@upalaaa Жыл бұрын
Esse código também não funciona
@isaaccamargos84792 жыл бұрын
Os vídeos desse canal são muito bons, estão me ajudando muito obrigado.
@pgdinamica2 жыл бұрын
Fico feliz em saber! Bons estudos!
@fransouza52146 ай бұрын
Que aula maravilhosa! obrigada por isso
@pgdinamica6 ай бұрын
Disponha! Bons studos!
@thiagomaia73603 жыл бұрын
Voltando no vídeo percebi que os already_sorted não estavam tão sorted assim rs. Muito bom os vídeos.
@pgdinamica3 жыл бұрын
Olhos atentos 😉 obrigado!
@gabrielbezerra77325 жыл бұрын
amigo, tu ta me ajudando tanto que nem sei! muito obrigado !
@pgdinamica3 жыл бұрын
😊🙌🏾
@maycolmichelmohr2702 Жыл бұрын
muito boa a sua aula e muito bem explicada...parabéns!!!!!!!
me ajudando a seguir no Introduction to algoritthms do Thomas Cormen, valeu!!
@pgdinamica Жыл бұрын
De nada!
@lucasferreiramachadopinto25012 жыл бұрын
Além de bonito o cara é um ótimo professor! Valeu de mais pela aula mestre!
@pgdinamica2 жыл бұрын
Valeu!
@gui.lhermeb Жыл бұрын
manoo esse canal salvou dmsss, na facul nao entendi muitoo bem
@PedroHenrique-yi3qb2 жыл бұрын
obrigado por salvar meu diploma, você é lendário.
@pgdinamica2 жыл бұрын
Hahaha, de nada! O único que pode se salvar é você, eu só dou uma ajudinha 😉 continue com essa postura de buscar conhecimento e aprender casa vez mais!
@ferro_gio5 жыл бұрын
Seu canal é muito bom cara, me ajudando muito
@pgdinamica3 жыл бұрын
Valeu!
@jonathasfernandes962 жыл бұрын
Obrigado pela explicação 😃
@pgdinamica2 жыл бұрын
De nada!
@arthurcandido2 жыл бұрын
Valeu!
@pgdinamica2 жыл бұрын
🤙🏾
@aluzqueacendeАй бұрын
Poderia fazer um vídeo sobre o algoritmo de ford-johnson?
@ricksonrocha83432 жыл бұрын
Excelente didática!
@pgdinamica2 жыл бұрын
Obrigado!
@Jessica-pz1bi6 ай бұрын
Por favor, faz vídeo de todos os métodos de ordenação ex tabela hash, insertion_sort etc
@pgdinamica6 ай бұрын
Insertion sort tem aqui no canal já, assim como merge sort e quick sort.
@gustavomendoncaortega3947 ай бұрын
Acredito que o segundo "if" não é necessário. Como você esta com o índice do menor, exceto os valores já ordenados, a troca pode ser feita sem necessidade da condição. O máximo que pode ocorrer, que não é o ideal, seria a troca de dois valores iguais. Considerando o peso de um "if" no código, não sei se é válido. Mas de resto, show demais!!!!
@enzom5840 Жыл бұрын
muito bom! valeu
@pgdinamica Жыл бұрын
Valeu!
@reginaldo123ify Жыл бұрын
Valeu cara! salvou a patria dos concurseiros.
@pgdinamica Жыл бұрын
🤙🏾😉
@ramonjales99412 жыл бұрын
muito boa a vídeo aula
@pgdinamica2 жыл бұрын
Obrigado!
@matheuscosta53304 жыл бұрын
Bom demais!
@pgdinamica4 жыл бұрын
Obrigado!
@jorgel7383 жыл бұрын
Me ajudou muito, obrigado!
@pgdinamica3 жыл бұрын
Que ótimo! =D
@tiagonascimento85772 жыл бұрын
Muito bom, parabéns
@pgdinamica2 жыл бұрын
Valeu!
@eds63523 жыл бұрын
Excelente! Poderia fazer o Bucketsort (ordenação por baldes)?
@SuperDorielson4 жыл бұрын
Ótimo canal de lógica de programação
@pgdinamica4 жыл бұрын
aah, obrigada!
@troy64075 жыл бұрын
Seu canal é top!
@pgdinamica5 жыл бұрын
Muito obrigado, Troy!
@igor80365 жыл бұрын
Parabéns pelo canal Conteúdo de ótima qualidade 👏
@pgdinamica3 жыл бұрын
Muito obrigado!
@nilsonsantos34694 жыл бұрын
Otimo canal, sua didatica e mt boa...Mais 1 inscrito
@pgdinamica4 жыл бұрын
🤩🤩🤩🤩 Obrigado!
@FariaJvP4 жыл бұрын
Parabéns pelo conteúdo, ficou muito bem explicado. Ganhou mais um inscrito
@pgdinamica4 жыл бұрын
Valeu! 🤙🏾
@doritosgremlin3 жыл бұрын
Caralho ! Vocês explicam muito bem !!!! Show de bola
@pgdinamica3 жыл бұрын
Valeu 😊
@sergiosoaresnunes16014 жыл бұрын
Vim pelo Deschamps e to estudando justamente ordenação na facul e entendendo nada... Certeza que vai ajudar muito. Valeeeu
@pgdinamica4 жыл бұрын
Show! Se tiver faltando algum algoritmo de ordenação, fala aê :)
@sergiosoaresnunes16014 жыл бұрын
@@pgdinamica opa, maravilha... não vi falando sobre o Heapsort, tem algum vídeo sobre ele? valeeu
@pgdinamica4 жыл бұрын
@@sergiosoaresnunes1601 É verdade! Não tem ainda, mas pretendo adicionar no futuro, é um algoritmo bem interessante.
@sergiosoaresnunes16014 жыл бұрын
@@pgdinamica Valeu, pessoal! Será de grande ajuda para estudos... Sucesso sempre!
@vandsonfalcao2 жыл бұрын
krl mlk muito bom, vlw
@andrezanobrega91765 жыл бұрын
Muito bom!!
@pgdinamica5 жыл бұрын
Obrigada! :)
@mohamedbinladen97114 жыл бұрын
Simplesmente incrível, parabéns pelo projeto e obrigado pelo conteúdo de qualidade!
@pgdinamica4 жыл бұрын
Valeu!
@igoorsimoess Жыл бұрын
valeu, alisson!
@pgdinamica Жыл бұрын
😉🤙🏾
@lastmfstandingАй бұрын
Tem alguma vantagem em usar esse algoritmo em vez do bubble sort? Os dois são bem parecidos, mas o bubble me parece mais simples e menos custoso.
@alerhandrovenancio56172 жыл бұрын
eu queria que você fizesse no Portugal studio!!
@pgdinamica2 жыл бұрын
Implementar o algoritmo noutra linguagem é um ótimo exercício pra você conferir se entendeu realmente.
@guilhermemelo8468 Жыл бұрын
Faz um vídeo sobre heapsort em python
@guilhermemelo8468 Жыл бұрын
E eu te amo, ta me salvando muito na faculdade de si kkkkk
@isaias.araujo7 ай бұрын
Na parte de testes o número 76 da lista ordenada, estava fora de ordem, mas o algoritmo corrigiu isso no teste hehe Prova de que funcionou tranquilamente
@pgdinamica7 ай бұрын
😉
@pabloleonardo3215 ай бұрын
09:25 Como não se sabe em que posição deseja-se colocar o 1? Se ele é valor mínimo, seu índice não é por definição oo 0?
@pedrohilbert4011 Жыл бұрын
O for in ranger(): já não faz a função do len?
@psdorival2 жыл бұрын
Se for duas entradas é o mesmo procedimento do código?
@ndas_adriana2 жыл бұрын
Por que estou recebendo o erro: selection_sort.py", line 29, in selection_sort if lista[i] < lista[min_index]: TypeError: '
@upalaaa Жыл бұрын
Esse código que vc ensinou e colocou na tela, não funciona. Fiz idêntico e a lista continuou igual 🤷♀️
@benevidesmoura92711 ай бұрын
Mesmo comigo
@raniel05113 жыл бұрын
Assistido✔️ Aqui marca o dia que mudou o cenário dos vídeos (você mudou de casa ou só de cômodo mesmo?) XD Por que a complexidade desse algoritmo é O(n²)? Não seria O(n) pois ele está percorrendo o array pra escolher o elemento menor e mudar a posição dele?
@pgdinamica3 жыл бұрын
Mudei de casa. Kizzy e eu viemos morar juntos :) A complexidade é O(n^2), porque para cada índice do array, você pode ter que percorrer o array todo. Ou seja, só na primeira iteração do for externo, você já tem O(n). Como o laço externo executa *n* vezes, fica n^2.
@linusspiegel7470 Жыл бұрын
7:08 se começar com o minimo usando o método min, tipo minimo = min(lista) tornaria o algoritimo mais ou menos eficiente?
@pgdinamica Жыл бұрын
O que você acha que o método min(lista) faz?
@FelipeSantos-rz1ro5 жыл бұрын
Bom vídeo. Mas amigo fiquei com uma dúvida, o segundo IF é necessário? Pq eu pensei, se eu já comparei com o primeiro elemento e achei o índice do vetor do menor, não precisa mais comparar. Mas eu posso estar errado (sou noob na programação)
@pgdinamica5 жыл бұрын
Seu raciocínio está correto! O segundo if evita que haja trocas no caso em que os valores são idênticos (por exemplo, se já estiverem ordenados dali pra frente ou forem todos repetidos), mas se você remover essa condição, o algoritmo continua funcionando e não há alteração na complexidade O(n^2).
@alessandraazevedo18124 жыл бұрын
OLÁ pode me passar uma dica de como ver se realmente ela está ordenada depois do selection sort :)
@pgdinamica4 жыл бұрын
Testes por classe de equivalência como no final do vídeo. Teste pelo menos essas classes: 1. Lista vazia 2. Lista já ordenada 3. Lista pseudo-aleatória 4. Lista na ordem reversa 5. Lista com duplicados 6. Lista com um único elemento
@kevinoliveira71943 жыл бұрын
pode me dar ideia de onde é implementado esse tipo de algoritmo? alguma situação
@pgdinamica3 жыл бұрын
1. Busca: para encontrar dados mais rapidamente, o algoritmo mais eficiente requer que os dados estejam ordenados: kzbin.info/www/bejne/g2iUaqB6rs6ljZI 2. Desenhos vetoriais: para desenhar formas vetoriais, como as letras de um documento PDF, por exemplo, ou polígonos, é necessário definir uma ordenação dos pontos. Se você procurar por "algoritmo de fecho convexo" vai ter uma ideia do problema pra polígonos convexos. Representações côncavas são mais complicadas. Repare que o selection sort não é o algoritmo de ordenação mais eficiente.
@joaovictorcarvalho11313 жыл бұрын
Professor, achei essa IDE bem interessante, qual é o nome dela?
@pgdinamica3 жыл бұрын
Não é uma IDE, é o editor de texto Visual Studio Code: code.visualstudio.com/
@joaovictorcarvalho11313 жыл бұрын
@@pgdinamica Obrigado, quando eu fui assistindo aos outros vídeos pude identificar. No Mac é um pouco diferente. 😅
@joaovictorcarvalho11313 жыл бұрын
@@pgdinamica Desde já, parabéns pelo conteúdo. Simplesmente incrível!!
@IltonBatista Жыл бұрын
aaaa por que o print fica antes da orndeção?? ;-;
@pedrohacker68464 жыл бұрын
oi, poderia me explicar o porquê daquele condicional if? após o segundo for, min_index vai ser necessariamente o índice do menor valor da lista, então acho que a condição desse if sempre vai ser verdadeira, não? lista[min_index] vai ser sempre menor que lista[j], mas não tenho certeza, por isso pergunto. o meu código ficou idêntico ao seu exceto que os comandos que você colocou no if no meu código estão sem if, dentro do for grandão mesmo, e tá funcionando certinho. de qualquer forma, obrigado, me ajudou bastante. ps: qual o editor que você usa no video?
@pgdinamica4 жыл бұрын
O segundo if evita que haja trocas no caso em que os valores são idênticos (por exemplo, se já estiverem ordenados dali pra frente ou forem todos repetidos), mas se você remover essa condição, o algoritmo continua funcionando. De todo, modo, não há alteração na complexidade O(n^2) do algoritmo! O editor do vídeo é o Visual Studio Code. Nos vídeos mais antigos, usava o Atom, mas o VS Code tem sido melhor pra mim já há uns 2 anos quase.
@mizaelcorreia Жыл бұрын
O código do github ta diferente do codigo da aula e no video voce cortou o final do codigo
@gustavomartins0074 жыл бұрын
top²
@pgdinamica4 жыл бұрын
🤙🏾😁
@Leossj12 жыл бұрын
to me sentindo bem burro, entendo a teoria, mas nao entendo o código
@pgdinamica2 жыл бұрын
Se você entende a teoria, tente implementá-la sem olhar o código. Quando tiver sua versão, você terá uma noção melhor de como ler outros códigos para o mesmo problema.