INSERTION SORT | Algoritmos #5

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 85

  • @chinfoplaya
    @chinfoplaya 3 месяца назад +1

    Cara, a forma que tu explicas detalhadamente torna o aprendizado bem mais agradável. Gratidão!

  • @RogerioCorteBrilhoBuselli
    @RogerioCorteBrilhoBuselli 6 месяцев назад +3

    É uma geração que na comunicação, tem um dom ! Muito boa explicação, Parabéns ! Excelente vídeo ! Grande Abraço !

  •  3 года назад +13

    Nossa! É incrível como tudo o que eu ando estudando encontro aqui no canal de vocês. Não parem nunca.

    • @pgdinamica
      @pgdinamica  3 года назад +2

      Obrigado, bons estudos!

  • @AllRox
    @AllRox 3 года назад +59

    Meu irmão, se você vir como isso foi explicado numa aula de engenharia de software, onde o tutor insiste que o conteúdo está bom, você cortaria os pulsos! Muito obrigado pelo conteúdo de qualidade! Mandou muito bem na didática!

    • @pgdinamica
      @pgdinamica  3 года назад +6

      Obrigado! Força aí nos estudos 👊🏾

    • @jeffersonanalisedesistema7680
      @jeffersonanalisedesistema7680 3 года назад +3

      Meu amigo, não sei o que os professores de cursos superiores fazem ali, os caras são muito ruim. Estou pagando um curso de analise e desenvolvimento, mas estou estudando no RUclips, como pessoas como o Hallisson, ele sim, deveria esta ocupando uma cadeira em uma faculdade. o cara é dez.

    • @Falaelvis
      @Falaelvis 3 года назад

      @@pgdinamica Amigo, eu tentei entrar em contato pelo insta mas eu nao consegui.

    • @juliodonofreo
      @juliodonofreo 8 месяцев назад

      QUE? algoritmo em aula de engenharia de software?

    • @AllRox
      @AllRox 8 месяцев назад

      @@juliodonofreo sim, pq?

  • @beatrizav5565
    @beatrizav5565 4 года назад +22

    MEU DEUS QUE CANAL PERFEITO VCS SÃO TUDO PRA MIM, OBRIGADA ALGORITMO DE RECOMENDAÇÕES DO RUclips POR ME APRESENTAR ESSA MARAVILHA

  • @PatrickNerbasBR
    @PatrickNerbasBR Год назад +2

    Parabéns velho, tu é muito foda e ensina de uma forma muita didática , tenho 10 anos de desenvolvimento e agora to precisando rever estes conceitos, comprei vários cursos e disparado você tem o melhor conteúdo , muito grato pelo conteúdo , continue assim! Mais um inscrito ❤

  • @danielmelo9064
    @danielmelo9064 Год назад +1

    Aula fantástica, Hallison!! O insertion sort sempre foi o algoritmo que me deu mais dor de cabeça dentre os 3 mais simples pra ordenação.

  • @carolinnerabbi965
    @carolinnerabbi965 6 месяцев назад +4

    nossa superrrr didático vc, adorei!!

  • @glauciof.pachecopadilha5876
    @glauciof.pachecopadilha5876 Год назад +2

    Muito bem explicado, parabéns!

  • @wandersonsilva5830
    @wandersonsilva5830 2 года назад +2

    Na moral? Eu aprendi mais contigo em um vídeo de 15 minutos do que em um semestre inteiro de estrutura de dados em ADS. Continue com esse conteúdo EXCELENTE que você tem. Abraços

  • @victorpinasarnault9135
    @victorpinasarnault9135 Год назад +1

    Legal Hallison, entendi bem.
    Muito obrigado!

  • @reimiguel6597
    @reimiguel6597 Месяц назад

    Muito bom. Top. Vai agregar muito nos meus estudos.

    • @pgdinamica
      @pgdinamica  Месяц назад

      Que bom que vai ajudar! 😉

  • @ramonjales9941
    @ramonjales9941 2 года назад +5

    Teria como trazer um sobre o "shell sort". Principalmente explicando o algoritmo. O conceito eu entendo, mas aquele algoritmo do shel sort é muito maluco. Desde ja, obrigado.

  • @gabrielalmeida8584
    @gabrielalmeida8584 Год назад +3

    Boa tarde! Eu fiz de utilizando dois for: Segue o código.
    import random
    any_numbers = random.sample(range(1, 100), 25)
    def insertion_sort(array):
    for i in range(1, len(array)):
    for j in range(i, 0, -1):
    if array[j] < array[j-1]:
    array[j], array[j-1] = array[j-1], array[j]
    return array

    • @pedromiotto
      @pedromiotto 5 месяцев назад

      entendi graças a seu comentário, pelo dele eu não estava conseguindo, valeuuu

  • @fabiusmaia4033
    @fabiusmaia4033 2 года назад +1

    Pra quem tiver dificuldade em entender esses algoritmos, eu aconselho criar uma lista aleatória e analisar como cada iteração interage com as linhas de código, por exemplo o array [5,3,7,9,6,14]:
    na primeira iteração o array[i] vai ser igual a 3, enquanto que o array[j] vai ser igual a 5, porque j = i -1. Já que 5 é maior do que 3, e o j é igual a 0, a função vai entrar no laço while e definir o elemento array[j+1] com o valor do elemento anterior array[j]. Nesse momento nossa lista vai estar assim:
    [5,5,7,9,6,14]
    Agora o j vai ser decrementado em 1, definindo o valor dele como -1, e como o valor dele é -1 e o while só vai continuar funcionando caso j >= 0, ele vai pular do laço e vai definir o elemento array[j+1] com o valor de array[i], que é o 3.
    Nossa lista vai ficar assim:
    [3,5,7,9,6,14]
    Agora é só repetir o mesmo procedimento pras outras iterações.

  • @mariafernandaferreira4401
    @mariafernandaferreira4401 Год назад +1

    Excelente explicação!

  • @guilhermeaco
    @guilhermeaco Год назад +1

    Excelente vídeo

  • @ThiagoMouraabreu
    @ThiagoMouraabreu 4 года назад +1

    Ótimo video, simples,pratico e direto..parabéns pelo conteúdo.

  • @Leossj1
    @Leossj1 2 года назад +1

    To vendo que vou levar um tempo até entender isso...

  • @Eliviery
    @Eliviery Год назад +1

    Alisson, você já tem um conteúdo exibindo o melhor e o pior caso dos algoritmos Insertion, Selection, Merge e Bubble?

  • @phideas8925
    @phideas8925 2 года назад +1

    Tu é um gênio, muito obrigado pela ajuda

  • @jpgondim8960
    @jpgondim8960 3 года назад

    mano eu te amo. sou da engenharia civil e to dando isso na unicamp e voce me salvou no laboratorio dessa semana eu te amo eternamente te amo te amo

  • @lucasantosmartins9084
    @lucasantosmartins9084 2 года назад +1

    didática excelente

  • @danielcolobo
    @danielcolobo 2 года назад +1

    Ae, valeu de mais!

  • @lazarok0963
    @lazarok0963 3 года назад +2

    obrigado irmão

  • @adelaidezhayramakeup5239
    @adelaidezhayramakeup5239 2 года назад +1

    seus videos são perfeitos

  • @raniel0511
    @raniel0511 3 года назад +2

    Assistido ✔️
    Então basicamente é como se ele pegasse várias cartas(vou usar seu exemplo) e jogasse na mesa e pegasse de uma por um até construir uma nova mão com as cartas ordenadas? Ele "destrói" o array e monta ele de novo?
    Se for isso realmente não parece muito eficiente principalmente pra muitos elementos.

  • @majubarbosa8452
    @majubarbosa8452 4 года назад

    Muito bom os videos sobre metodos de ordenacao! Aprendi a utilizar agora com vc! Estou aprendendo python neste momento e aos poucos aprendendo sua abrangencia, comandos e metodos... Parabens pelo trabalho! Continuem firmes! Ja ganharam uma seguidora :)

    • @pgdinamica
      @pgdinamica  4 года назад +1

      Seja bem vinda, Maria! Bosn estudos!

  • @jessicarobertadesouzasanto112
    @jessicarobertadesouzasanto112 4 года назад +1

    Explicação perfeita

  • @blueNeodymium
    @blueNeodymium 4 месяца назад

    A diferença entre o insertion sort e o bubble sort é que o insertion faz a comparação com os vizinhos em pequenas listas?

  • @gustavomartins007
    @gustavomartins007 4 года назад +1

    top

  • @salubcosta
    @salubcosta Год назад

    Caraca brother! Mandou muito bem!!! Parabéns o/

  • @bernardobritto8352
    @bernardobritto8352 4 года назад

    Fala mano, blz? Primeiro vídeo que vejo do seu canal e achei muito bom, mais 1 inscrito e vou agora ver os outros tipo de sorting! Parabéns pelo conteúdo

    • @pgdinamica
      @pgdinamica  4 года назад

      Valeu, Bernardo! Seja bem vindo 😁

  • @edsonmatheushaas8706
    @edsonmatheushaas8706 2 года назад +1

    a lista já ordenada não estava 100% ordenada ksksks, o 76 estava fora de ordem, ótimo vídeo e ótima aula

    • @pgdinamica
      @pgdinamica  2 года назад +1

      Detalhe espacial somente para os mais atentos!

    • @jltaveira
      @jltaveira Год назад

      Também percebi isso

  • @nandoscottimuzzi95
    @nandoscottimuzzi95 Год назад

    Oi Halisson.
    tentei implementar um algoritmo baseado na explicacao que vc deu no quadro e saiu isso aqui. Vc poderia comentar o codigo? A primeira deficiencia que notei foi foi um aumento na complexidade de espaco pois criei uma nova lista. Podemos dizer que isso é um a variacao do Insertion_sort ? Obrigado desde já
    def insertion_sort(u):
    lista = []
    while(u):
    item = u.pop()
    if lista:
    # colocando em ordem
    i=0
    while (i < len(lista)):
    if item < lista[i]:
    lista.insert(i,item)
    break
    # se for menor que o pnultimo
    if i == len(lista)-1:
    #poe no final da lista se "item" nao for menor que o ultimo elemento da fila
    lista.append(item)
    break
    i=i+1
    else:
    #se for o primeiro elemnto a distribuir
    lista.insert(0,item)
    return lista

  • @CanalDoLuizFellipe
    @CanalDoLuizFellipe 2 месяца назад

    qual aplicativo/programa que você usa para escrever esses códigos do vídeo?

    • @pgdinamica
      @pgdinamica  2 месяца назад

      Visual Studio Code: Como Instalar Python e Visual Studio Code no Windows | Python do Jeito Certo 2.0
      ruclips.net/video/R9dLGLVqK9Q/видео.html

  • @richardribeiro1130
    @richardribeiro1130 5 лет назад

    Boa tarde tem algum vídeo falando sobre a ordenação por inserção tempo de consumo, ou seja o tempo de execução do mesmo?

    • @pgdinamica
      @pgdinamica  5 лет назад +1

      Sai hoje às 18:00h! Análise de complexidade da ordenação por seleção, por flutuação e por inserção também!

  • @arthurluiz7727
    @arthurluiz7727 2 года назад

    Preocupado por ter entendido muito bem no quadro mas ter explodido os miolos e não ter entendido as trocas no código. Eu quero morrer T.T

    • @pgdinamica
      @pgdinamica  2 года назад +1

      É normal. Tenta implementar por conta própria, lembrando da ideia do algoritmo. Se for preciso, esquematize a ideia em um papel antes. Depois de tentar - conseguindo ou não - assista ao vídeo novamente. Estudar é um processo ativo.

  • @FabricioRAPGOSPEL
    @FabricioRAPGOSPEL 5 лет назад

    vc pode mostrar esse algoritmo na integra passo a passo?

    • @pgdinamica
      @pgdinamica  5 лет назад

      Oi, @83Aibones, não entendi a pergunta 🤔. O vídeo explica o algoritmo completo (funcionamento e implementação) e a descrição tem link pro código produzido, inclusive os testes. O que você precisa?

    • @FabricioRAPGOSPEL
      @FabricioRAPGOSPEL 5 лет назад

      @@pgdinamica porque eu não sei como fazer pra rodar desde o começo.
      queria ver como foi montado desde o inicio.
      eu tenho que fazer esse trabalho e eu to perdido.
      1. Implemente os algoritmos de ordenação de acordo com a tabela.
      2. Teste cada algoritmos com quatro vetores (ver vetores ao final do documento)
      3. Calcule o tempo que demora em ordenar os vetores cada algoritmo.
      4. Fazer uma tabela com os resultados.
      5. Fazer uma analises dos resultados (analisar que caraterística tem cada vetor)
      6. Entregar um documento com:
      Nome do aluno
      Titulo do trabalho
      Descrição de cada algoritmo
      Código da cada algoritmo
      Tabela de resultado
      Analises dos resultados
      Vetor1
      1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
      Vetor2
      29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1
      Vetor3
      1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,29,28,27,26,25,24,23,22,21,20,19,18,17,16
      Vetor4
      15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,16,17,18,19,20,21,22,23,24,25,26,27,28,29
      Vetor5
      6,17,27,1,10,14,24,2,20,8,28,7,19,12,9,5,29,3,22,11,15,18,23,25,4,16,13,26,21
      tenho que testar esses vetores

    • @pgdinamica
      @pgdinamica  5 лет назад +5

      @@FabricioRAPGOSPEL A implementação do algoritmo inicia em 5:51. Se você está aprendendo a programar e tem dificuldades em como executar um programa, sugiro esta outra playlist: (Introdução ao Python por Projetos | Comece Aqui) ruclips.net/p/PL5TJqBvpXQv6AEfVymby32MinHdxZA-8J

  • @Eliviery
    @Eliviery Год назад

    O insertion_sort não ordenou corretamente, confira em 11:13, a diferença entre o intervalo de [34 ... 87] na sua lista.

    • @pgdinamica
      @pgdinamica  Год назад +1

      Ordenou sim: [...34, 39, 40, 42, 76, 87...]. O exemplo que deveria estar previamente ordenado é que possui uma inconsistência [...34, 76, 39...], mas o insertion_sort a corrigiu. Era esta a questão?

    • @Eliviery
      @Eliviery Год назад

      @@pgdinamica entendi. Valeu!

  • @Falaelvis
    @Falaelvis 3 года назад

    Ola, boa tarde, eu tentei entrar em contato pelo Insta mas nao consegui. rsrs

    • @pgdinamica
      @pgdinamica  2 года назад

      Envie um email para contato@programacaodinamica.com.br

  • @italokelmy7372
    @italokelmy7372 Год назад

    oxi, é igual ao select sort?

    • @pgdinamica
      @pgdinamica  Год назад +1

      Não mesmo. A ideia do selection sort é encontrar o menor (ou maior) valor no vetor inteiro e colocá-lo na primeira posição, e então repetir isso no restante do vetor.