Inserção e Remoção em Listas | Complexidade de Inserir e Remover na Lista | Estruturas de Dados #3

Поделиться
HTML-код
  • Опубликовано: 4 окт 2024
  • Neste vídeo, estudamos como são realizadas as operações de inserção e remoção de um elemento em uma lista em alocação sequencial de memória. Neste momento, buscamos aproveitar o que Python já nos traz pronto e entender como que as operações em listas podem ser realizadas.
    ▶️ Se você não tem experiência com Python, mas gostaria de aprender a programar e desenvolver uma base sólida de programação usando esta linguagem, confira o nosso curso Python do Jeito Certo: vai.pgdinamica...
    Nos vídeos anteriores, já vimos o que é uma lista linear em alocação sequencial e como utilizá-la em Python. Também aprendemos a implementar um algoritmo simples de busca linear para encontrar um elemento em uma lista e verificamos como calcular a complexidade deste algoritmo. Agora, aproveitamos todo o conhecimento construído para entender como funcionam as operações de inserção e remoção em uma lista linear em alocação sequencial e qual a complexidade de inserir um novo elemento ou tentar remover um elemento que pode ou não estar presente na lista.
    ⚠️ Python Café agora é Programação Dinâmica! :D
    ▶️ Acompanhe o curso de estrutura de dados nesta playlist: • Estrutura de Dados
    ▶️ Confira também a playlist sobre Análise e Projeto de Algoritmos: • Análise e Projeto de A...
    📚 Livros de Algoritmos e Estruturas de Dados: amzn.to/3d5wK4m
    📚 Livros recomendados de Data Science: amzn.to/2XZyxUr
    🎥 SetUp - Equipamentos: amzn.to/37Cg3N2
    🟣 Canal na Twitch para lives: / pgdinamica
    🟦 Canal do Telegram para receber os vídeos: t.me/joinchat/...
    ✉️ E-mails:
    - Propostas comerciais: pgdinamica@brunch.ag
    - Demais assuntos: contato@programacaodinamica.com.br
    👩🏾‍💻👨🏾‍💻 Confira mais conteúdo em nosso blog: blog.programac...
    🔥 Faça parte da comunidade gratuita Programação Mais Dinâmica: bit.ly/pgsparkle (baixe o app e entre na comunidade)
    📸 Nos siga no Instagram: / pgdinamica
    📸 @kizzy_terra @hallpaz
    🐦 Nos siga no Twitter: / pgdinamica
    🐦 @kizzy_terra @hallpaz
    Curta a Programação Dinâmica no facebook: pgdinamica
    Nosso repositório no Github: github.com/programacaodinamica
    Confira o nosso Medium: medium.com/programacaodinamica
    Confira os artigos no Python Café: pythoncafe.com.br
    🥰 Se você gosta do nosso trabalho e acha relevante a nossa atuação no RUclips, considere nos apoiar se tornando membro do canal: www.youtube.co...

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

  • @williamsantannaribeiro6926
    @williamsantannaribeiro6926 4 года назад +7

    Suas aulas tem muito me ajudado na compreensão da matéria.

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

    Aula maravilhosa

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

    Aprendi a desenvolver algoritmos de inserção de elemento no final, inserção no meio e remoção tanto no início e final, porém o assunto da complexidade e a explicação do gerenciamento do espaço de memória foram primordiais para complementar meu aprendizado.

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

      Bom sabe que contribuí :) bons estudos!

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

    Assistido✔️
    É isso que acontece quando escrevo append() ?

  • @GustavoHenrique-sw6gg
    @GustavoHenrique-sw6gg 11 месяцев назад

    você é foda, está me ajudando muito

  • @claufss
    @claufss 3 года назад +1

    6:30 nesse caso a complexidade de adcionar elementos seria O[N] ?

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

      A cópia é O(N), mas não podemos dizer que a inserção na lista é O(N), porque esses momentos de expansão e contração são raros em relação à quantidade de inserções na lista. Então, na prática, a inserção em alocação sequencial ocorrem em O(1).

  • @VivianneLopes-es5kc
    @VivianneLopes-es5kc Год назад

    8:22, não seria todo mundo uma posição para trás?

  • @GlaedrDK
    @GlaedrDK 9 месяцев назад

    Olá, Hallison! Gostaria de tirar uma dúvida referente a memória. Comecei a estudar sobre o gerenciamento de memória recentemente e pegando o que foi dito em 4:50 do vídeo em diante, a lista é alocada na heap?

    • @pgdinamica
      @pgdinamica  9 месяцев назад +1

      Sim, na heap. A lista em alocação sequencial que eu ensinei, poderia ser alocada na stack (em uma linguagem como C; em Python, deve ser na heap também), porque dá pra pegar um tamanho fixo e gerenciar a alocação de tempos em tempos. Estruturas dinâmicas como a lista encadeada e as árvores, vistas em sequência, são alocadas na heap.

    • @GlaedrDK
      @GlaedrDK 9 месяцев назад

      Show, mt obg!! Agradeço demais pelo conteúdo. Forte abraço.@@pgdinamica

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

    Mano faltou o código...

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

      Olá, Rogério! Todo código de estruturas de dados encontra-se neste repositório: github.com/python-cafe/data_structures
      Obrigado por avisar!

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

      @@pgdinamica Obg mano!!! Sucesso... Likes no seus vídeos nota 10... Parabéns...

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

    1:42 mas pra descobrir qual é essa última posição onde eu quero inserir, preciso percorrer a lista toda elemento a elemento até descobrir qual é o último

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

      Não, não precisa. Você pode salvar o índice correspondente ao último elemento na lista e atualizá-lo sempre que ocorrer uma inserção ou remoção. A complexidade de espaço pra isso é constante e a complexidade de tempo pra essa inserção também é constante.

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

      @@pgdinamica Valeu! nao tinha pensado nisso..

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

      @@pgdinamica Como descobrimos o índice do último elemento em Python? Acha interessante utilizar a função 'len() - 1' na lista?