a vaga é sejam bem vindos ao pai com café somos um país neste vídeo nós vamos continuar implementando a nossa própria lixa encadeada no vídeo anterior nós vimos como nós podemos percorrer e acessar elementos dentro da lista encadeado agora nós vamos focar em como nós podemos inserir e remover esses elementos mas se começar gostaria de convidar você ainda não se inscreveu no canal a se inscrever e não esqueça de levar o cinema para receber notificações de vídeos novos você pode curtir a página vai tocar no facebook além é claro de conferir os artigos que escreveu
no site para um café no dia anterior além da busca e acesso de um elemento dentro da lista mas também implementamos a inserção de um elemento ao final da lista nós escrevemos um método chamado append tentando copiar o nome que já existe nas listas em educação seqüencial que o pai não dá pra gente agora nós vamos escrever um novo método nós vamos chamar lhe em sorte e vai nos possibilitar em seguir um elemento em qualquer posição da lista dado um índice nós vamos passar o elemento e o índice que nós queremos em seguir essa função
em sorteasse método da nossa vista do cadeado mas seria segmento naquela posição determinada então vamos lá vão botar a mão na massa então aqui está o arquivo que nós escrevemos no vídeo anterior nós começamos importando a classe nó que nós escrevemos no momento em que começou a falar sobre educação encadeadas essas coisas depois nossa classe em que digo isso que representa a nossa luta encadeado tempo tem o seu construtor com seus atributos certo então nós temos o norte é a cabeça que começa vazio e um outro atributo para conter o tamanho dessa lista depois de
um método aprende quem chamou de comentar sobre ele que permite que a gente siga elemento no final da lista depois esse método especial anderle ninguém andei lendo e rainey permite a gente utiliza aquela função lem consonante da linguagem python pra repor responder o tamanho da lista certo é que nos tornamos aquele atributo que fica escondido a gente colocou online antes para apresentar um atributo escondido que o usuário não deve tentar ser saúde diretamente depois tem essas duas funções aqui jet set que a gente não não precisa porque nós temos agnetha e a7 aí tem também
funções especiais aquino python que nos permitem utilizar anotações x pra acessar os elementos tanto a leitura né pra receber o seu valor a cnet item quanto à escrita ou seja modificar o valor que está naquela posição e assim a gente consegue fazer uma interface bem similar àquela que há juristas que o pai não nos dá já possuem e aí finalizando nós temos então um método index que nos permite saber qual é o índice de um determinado elemento se tiver da lista e não viver na lista nós retornamos nós jogamos esse erro velho erro que é
o comportamento que as listas do partido também já possui e aí nós vamos escrever mais um método aqui o insight então tá aqui df sorte e vai receber dois argumentos além do próprio selton que é o próprio objeto que está tá chamando né esse método que está executando são constantes 2 ago - o primeiro deles é o índice que nós tínhamos inserir tão diferente aqui no método aprendi que recebi apenas o elemento porque assim seguir sempre ao final da lista aqui para que a gente tenha essa flexibilidade de ser em qualquer ponto nós vamos precisar
desse índice e aí o segundo argumento naturalmente o elemento que nós queremos inserir tá e aí nessa inserção nós vamos ter dois casos existe o caso em que o usuário inserir no começo da lista e é esse que esse caso é um caso especial porque porque esse primeiro elemento da lista ele é a cabeça da lista é a única referência de nokia a gente segura de fato é que a partir da cabeça que a gente consegue acessar todos os outros então nesse caso especial a gente vai ter que mexer com a cabeça da lista no
caso de do usuário tentar inserir a partir da segunda posição a qualquer posição depois depois da cabeça aí não tem problema o tratamento é idêntica à que vai ter que andar até aquela posição inserir logo em seguida né não até o antecessor da posição em seguir isso em seguida então vamos analisar que se index 0 quer dizer que a gente quer fazer uma inserção na cabeça na posição na primeira posição da lista e aí que a gente tem que fazer primeiro vamos criar o nosso novo nó com esse elemento então estamos envolvendo o elemento que
quer ser armazenada nessa nessa nossa estrutura de nova depois nós vamos dizer o seguinte esse nó como vai ser o primeiro elemento de todos então o próximo dele vai ser o aquele que é o primeiro elemento antes de entrar o que é o primeiro elemento a gente entrar é justamente a cabeça da lista certo então o próximo de sinop acabou de ser criado é a cabeça da lista e agora a gente precisa localizar quem que é a cabeça da lista porque deixou de ser quem era certo é um elemento que estava lá deixou de ser
e se passou a ser o novo nó que entrou então com isso a gente resolve esse primeiro caso em que o usuário inserir no começo da lista você poderia pensar que esse caso nesse caso ele tem um uma situação especial particular que o caso em que o usuário inserir nessa posição mas a cabeça vazia então a gente acabou de ser criada por exemplo está vazia e usuário vai lá e dá um esporte 0 e algum outro elemento então esse caso a gente consegue tratar com esse mesmo código aqui não vai precisar de um código especial
estado vai precisar de um hífen nada desse tipo porque essa linha que vai funcionar normalmente certa um depende da da lista aqui passamos alimento envolvemos ele essa próxima linha vai associar o campo próximo desse nó quem quer a cabeça nesse caso a cabeça vazia certo que a lista estava vazio e não tem problema o campo próximo vai ser o brasil disse você reparar o nosso nome já criada dessa forma naturalmente ele tem nome lá no campo próximo então vai ser um ó isolado não sozinho como já é e aí depois a próxima linha também continuam
funcionando nós vamos atribuir a ao campo cabeça e sinop acabou de chegar então é esse cantar vazio agora ele sabe quem é que é ele não está em sinop acabou de chegar então mesmo código resolve esse problema o ceará tem no caso da gente queria inserir um elemento numa posição diferente dessa posição da cabeça diferente de 2001 nós precisamos caminhar até essa posição na verdade nós precisamos caminhar até o nokia está imediatamente antes dessa posição porque a partir dele nós conseguimos colocar um novo elemento na posição número correto então vamos fazer algo muito similar com
o que a gente fez aqui com a gente queria acessar um elemento que estava internada posição no gat ii tem pra pra saber qual é o seu valor ou no set até que a gente inclusive copiou o código quente ia ter essa posição também só que nesse caso para modificar o valor que estava lá a gente começa a portela vai auxiliá-la se pode dar o nome que se quisermos chamar que depõe ter porque é a idéia dela funcionar como como ponteiro realmente que vai caminhando ao longo do da nossa lista e aí ela inicia na
primeira posição possível na lista que a cabeça certo e aí eu verifico verificar na verdade eu vou mandar uma determinada quantidade baseada no índice que me foi passado certo então vamos fazer uma repetição uma integração aqui definido nós sabemos quanto espaço nós queremos andar mas a gente precisa fazer uma verificação aqui dentro se a gente não não tá querendo andar mais fácil do que elementos que existem na lista então pode ser que a lista tenha cinco elementos usuário eo usuário tem tentado seguir na posição de número 10 tom vai fazer sentido se vai ter que
dar um erro pra ele então a gente vai ficar aqui primeiro se esse ponteiro e não está numa posição vazia está por exemplo a cabeça porque estava vazia hoje já andou até um ponto em que estamos no brasil então se não tiver vazio então se isso for verdade a gente vai poder avançar para o seu próximo segundo a onu ele tem um próximo certo pode ser que o próximo seja vazia mas esse nesse caso ainda então nós vamos poder avançar com esses ponteiro no caso deve ser vazio aí não tem jeito a gente vai ter
que lançar um erro para o usuário eu e rudy índice é esse aqui que a gente tinha escrito antes ele está tentando acessar uma posição ao range vez maior do que o tamanho da lista que a gente tem nesse momento então olha aqui é um código muito o mesmo código o mesmo código basicamente e aí a diferença aqui é que como nós não queremos andar até essa posição chegando até o seu o seu antecessor para poder seguir na posição correta nessa posição de número index nós temos que subtrair um aqui então eu vou até aproveitar
essa deixa pra que a gente faça uma boa prática aqui de programação porque esse código está repetindo aqui isso a gente precisa mudar algum dia eventualmente alguma coisa esse código vai ter que mudar em todos os lugares isso além de ser mais trabalhoso é uma fonte de erro a gente pode acabar mandando um no outro dar errado não mudar então nós vamos concentrar esse código no mesmo local então vou aproveitar que eu tinha e cigarette aqui vamos escrever uma função chamada get low digitar que a gente passa pra ela o índice e ela retorna pra
gente o nokia se encontra naquele índice tá então como vai ser o código dessa gatti node vai ser exatamente esse aqui é exatamente o que dá aqui dentro a gente começa com o ponteiro na primeira posição na cabeça e vamos andar com esse ponteiro exatamente esse index vezes e aí se a gente não jogou nenhum erro no final desse foco o conteúdo vai dar exatamente em cima da posição que a gente precisa ea gente vai poder retornar esse ponto é que há um ok tá naquela posição e essa função nós vamos deixar ela escondida assim
como não deixando escondido aqui esse atributo size porque isso pensa só comigo o usuário ele não se importa com essa coisa de noh da usuária que aguarda elementos e quer pegar elementos e é por isso que é que nuno aprendi a gente recebe um elemento não recebe mó e aquino no gat aí tem a gente olha o elemento aproveita 17 ae tem também o óleo passa o elemento e tal esse negócio de noh ele é uma abstração nossa o que a gente precisa pra gente conseguir é implementar essas funcionalidades então não faz muito sentido eu
disponibilizar para o usuário falar assim olha você pode obter o nokia na posição tal é uma coisa que a gente quer utilizar aqui dentro por conta disso não marcar essa função conceder laine um único leilão online aqui antes do do nome dela está certo e já poder modificar vai poder modificar aqui tudo isso aqui vai virar underline self ponto no índice desejado aqui também self ponto online get loud no índice desejado ops e aqui onde a gente está querendo também só que o índice que a gente quer é esse que foi passado - um por
que a gente é o nokia está na posição imediatamente anterior a posição que a gente quer sair então aqui o ponto vai ser self ponto jet node na posição index - 1 então agora eu tenho carro que está na posição imediatamente anterior àquela época nem sei como é que eu faço pra vencer e eu crio o nó e eu coloco no next desse cara e sinop foi criado mas eu posso fazer isso direto não se eu fizer isso aqui dessa forma vou cometer um erro que é o seguinte bom se esse nó se essa posição
a última posição da lista tudo bem não vai ter problema mas se vier alguém ali logo depois decidir se antecipa que a gente encontrou a gente perdeu acesso pra esse cara tá ele estava ligado a única ligação que ele tinha que no nosso programa é com o nexo de se conter a gente acabou de trocar o next desse ponto é preciso onde perdemos acesso para o restante da lista não seja uma lista de dez elementos a gente quiser sair nu na posição 3 chegamos ali nuno pouco o ponteiro na posição 2 e descartamos todo mundo
que estava três pra frente botamos a 3 o nó e perdemos o resto então antes de fazer isso a gente precisa mudar captura esse restante da lista é quem estava ali no next do ponta aqui no next esse nó então realmente se encaixa no meio netão antes de colocarmos é o nó ligado ao hino next do seu antecessor a gente liga aí com a galera que vem na frente e agora sim desliga esse cara aqui em miguel em cima certo então isso aqui vai nos permitir inserir na lista a gente pode verificar aqui também uma
repetição desse código em vai rodar tanto no dentro do ifac encontra dentro do elche a gente pode melhorar isso colocando aqui fora e tem mais um uma coisa é um passo que a gente tem que executar que é o de aumentar o tamanho da lista em uma unidade certo tinha que não aprende também cabelo exatamente essa linha vai fazer lá embaixo com isso a gente consegue inserir em uma posição qualquer da lista vamos testar o nosso código tá então vou abrir um modo interativo interpretador já vou deixar que preparar essas instruções que a gente seguir
pegar uma lista que já tem alguns elementos em seguir novos elementos nela e vamos lá vão abrir um modo interativo do interpretador python 3 ea id do modo o link seu início nós vamos importar a nossa classe em que luís e aí vou copiar aqui se conseguiu copiar tudo isso aqui é assim reclamou de tentação então aqui veio copiado com esse espacinho anterior o que fazer só para conseguir copiar a gente faz isso depois volta e pronto vai dar certo então temos uma lista com cinco elementos vamos inserir na posição 10 tava começar e com
a cabeça o elemento 2267 nós vamos colocar o 22 ali na posição 10 ficar lista 0 22 a 17 posição de número 3 isso o valor 888 e aí vamos lá lista 3 888 certo ea quiser conferir aqui antes dele vem 80 então o primeiro eu tenho 22 na 07 1 80 na a2 e na 3 88 e aí pra ter um exemplo diferente não votamos no começo botamos no meio como também no final pensei no final a gente pode fazer o insight com o tamanho da lista e aí o tamanho da lei a gente
vai votar 50 a gente pode olhar água lista na posição tamanho da lista - um pouco agora o tamanho da lista cresceu em relação ao que a gente tem colocado lá os 50 último a funcionar nossa função de inserir agora nós podemos avançar para remoção de um elemento de uma vez tem cadeado que significa remover um elemento da lista para remover o elemento da lista nós precisamos remover todas as referências que existam para esse segmento na lista quero dizer com isso a lista ela armazena apenas quem que é o seu primeiro nó certo nossa representava
uma seqüência de nós que estão ligados com esse campo próximo ea gente sabe que é o nó na cabeça e os nós na lista foi o cabeça e está assegurada pela própria lista mas com outro nó interno a lista ele tá ligado ao seu antecessor o campo anexo certo e essa ligação é a única referência no caso dessa nossa lista que ela é simplesmente encadeada é a única referência que que nós temos para esse elemento é a única forma que nós conseguimos chegar nele nós temos que passar por aquele nó o seu antecessor em campo
nexo para chegar no destino desejado então para remover um elemento da lista abaixo que a gente tinha e desse campo next do seu antecessor então nós não precisamos nós precisamos encontrar o noc contém um elemento para dizer olha e itaqui de fato mas mais importante ainda o tão importante quanto é o nó antecessor ao 9 contém elementos que nós chegamos remover porque é nele que nós precisamos fazer modificação dizer olha o seu próximo não é mais esse nome porque esse nó foi removido da lista e nós precisamos ter o cuidado de verificar se não verificar
mas realizar a ligação entre esse nota o assessor e o nosso sucessor ao nosso está sendo removido porque senão a gente vai acabar removendo todo mundo porque a referência de quem está após o nó removido tá apenas no campo next do nóqui nós queremos envolver então é preciso fazer essa ligação direta entre quem vem antes com quem vem depois do nóqui e nós tínhamos de morrer vamos verificar como é que isso fica no código está talvez um pouco menos abstrata vamos rever o método removeu e vai receber como argumento o self e um elemento que
nós chegamos removê lo e aqui dentro nós vamos ter que procurar vamos ter que andar na lista sequencialmente de próximo próximo até encontrar um elemento que a gente quer mover e armazenar andar com conteúdo não só para pagar esse elemento que a gente quer mover mas também no seu predecessor como a gente não tem uma ligação do do nó com quem é o antecessor a gente vai ter que armazenará isso não avaliava que a parte e esse código vai ser bem parecido com esse aqui da função index que fazer essa busca tá certo então vamos
tentar reproduzir isso aqui a gente vai ter que colocar esse ponta que vai andar começando na cabeça é que já nos vem à mente um caso especial se eu tô procurando também o predecessor do nó tem um nó que não têm para a pessoa que é a própria cabeça certo então quando a gente quer remover um elemento que está na primeira posição da lista porque a gente vai fazer é mover a cabeça uma posição à frente de mover a cabeça uma posição à frente significa que o próximo elemento é quem é o segundo elemento passou
a ser o primeiro porque agora ele tem a cabeça e esse elemento que era cabeça a gente não tem mais ninguém segurando ele certo não tem ninguém que tem um campo net apontando pra esse carga e ossel ponto rede wi-fi mudou também não está mais dinheiro então vai ser perdida vai ser removido então a gente tem que verificar se o self ponto rede ponto deita igual elemento e aí se for a gente vai fazer o rádio avançar para o next hamas inec foi o brasil não tem problema a cabeça vazia significativa da base em remover
o único elemento que existia na lista aí se não foi igual ao que a gente vai querer fazer a gente vai avançar e procurar o até encontrar qualquer alimento que tenha o ao certo vai ser o código parecido com isso aqui é igual ao ponto rádio agora a gente não precisa do índice certo mas a gente vai ter que fazer se o iraque enquanto a gente puder avançar o nome a gente vai verificar se o dado é igual o elemento se a gente encontrou é aqui que a gente vai remover tá ok então encontramos é
que a gente vai fazer a remoção se não o encontrou eu vou avançar certo é aqui eu vou eu vou adicionar um detalhe tá então não faz muito sentido fazer essa comparação aqui com o primeiro elemento porque no caso de ser o primeiro elemento a gente já comparou aqui tá certo ponto rádio então e se põe ter ele vai começar na verdade com o next e começa a partir do segundo elemento certo e mas o primeiro elemento é importante aqui pra gente porque é esse antecessor vou chamar de um sucesso ele vai ser igual ao
céu com o rádio então esse cara que de fato começa na primeira posição e esse outro aqui na segunda posição essa verificação se for igual ou remover o que vai ver o código de remover vamos ter aqui quietinho enquanto o sinal vai avançar com esse eu também preciso avançar com o acesso isso aqui é equivalente né ah se eu tiver colocado aqui antes né se eu colocar antes do bótom acesso igual a ponta certo já que o porto está sempre uma posição à frente do nosso o acesso é ótimo então agora como é que a
gente faz para remover para remover pode e vai vim aqui a gente tem que fazer essa ligação direta entre esse é um setor e opõe ponto next essa ligação de gato que a gente tem que fazer então vamos escrever aqui então o acesso por ponto next vai ser igual ao poeta ponto next ligou diretamente o antecessor ao sucessor do nóqui a gente quer remover e aí só por desencargo de consciência que a gente bota next de sinop está sendo removido como um vazio que não vai ter nenhum nenhum problema e não está levando ninguém ali
e aí pronto ele tá solto tá um isolado é não tem nenhum próximo e ele também não não tem ninguém que diga que ele é o próximo e vai ficar aqui se não tiver nenhuma outra variável no programa que tem exatamente esse mesmo objeto é da memória e vai ser mas é completamente excluído vai sumir do nosso programa de qualquer forma ele já não está mais na lista então esse aqui é um código para remover tem um detalhezinho aqui na nossa parte aqui da função que é o caso em que a cabeça estava vazia ea
gente não tem como remover a cabeça vazia não tem como resolver então fazer um adicional este teste aqui porque senão vai dar erros e obter um erro que no começo vai tentar fazer a partir do noni obter o direito que vai dar problema então a gente pode colocar o iff aqui que colocar um ele fique certo então a gente verifica se o self ponto rádio é nome e aí se for a gente quer levantar um erro aqui e aí o erro que a gente pode levantar pode ser por exemplo essa idéia o erro a gente
pode dizer da mesma forma que a busca dizer que o evento não está na lista pode dizer como nunca na história está vazia e aí para os outros dois casos em que a gente consegue realizar essa remoção a gente pode retornar verdadeiro tal valor é apenas fazer essa operação ocorreu de forma adequada a gente retorne aqui verdadeiro e se a gente passou por tudo e não retornou nada quer dizer que a gente percorreu toda a lista não não encontramos o elemento lá dentro da lista levanta um erro também dizendo olha o elemento não estava na
lista não tenho não tive como remover tá certo então esse aqui é o código da remoção o amor vamos testar também pegar aqui copiar essa parte e aí tá aqui a nossa lista com cinco elementos e aí a gente quer fazer o teste novamente aqui vamos inserir na posição 14 o elemento 22 e vamos remover o elemento 80 por exemplo não está ponto envolve 80 e retornou tudo pra gente operação foi bem sucedida vamos verificar como está a 0 tem que dar pra gente o set está um que devia ser 80 tem que ser agora
ou 56 olha gente continuar a seqüência 32 assim vai uma coisa interessante que a gente não tenha uma forma de exibir essa lista quando a gente daqui print lista desse negócio estranho que há um objeto na memória desse endereço de memória quem é esse mal que a gente não escreveu um método que diz como que essa lista deve ser representada conca deve representar conca deve ser convertida numa estranha esse tipo de coisa que não escreveu é podemos podemos até escrever nesse vídeo vamos remover mais um vamos envolver o primeiro alimento pra ver se tá certo
modo 7 eu boto está cego da 56 não removemos 89 interno e governos 17 é o na cabeça e tudo isso correu bem tem um erro que já observei aqui já perceber quem chega esqueceu quem não vai perceber dessa forma se eu tentar remover 80 mesmo tempo a encontrar 80 no estã o em revista - um tem que dar pra gente 80 e aí a gente obteve um erro então esse é o erro que eu tava comentando que aconteceu porque a gente tentou acessar aquela posição tinha dado certo como eu estava em segundo mas está
dando errado agora que ele removeu que na hora da remoção a gente esqueceu de subtrair um do tamanho da lista 87 soma 1 não é que a gente remove a gente precisa subtrair um então vamos subtrair aqui nos casos em que a operação é bem sucedido trocaram mais por menos e está certo vai dar certo aproveitem essa correção remover vamos escrever também os métodos para mostrar uma representação dessa lista tá não tem esse aqui urr a gente vai escrever também o método especial que converte este objeto pai uma string que é o que vai ser
chamado a gente usar a função frente e é esse aqui na verdade a gente vai pedir para retornar a mesma coisa que o outro retornar seja lá o que for e aqui dentro a gente retornar uma uma string nós vamos começar vazias stream e aí a gente vai percorrer nossa lista percorrer a lista a gente vai ter que começar aqui na cabeça enquanto o nosso conteúdo for válido a gente vai somar concatenar no tempo correto o que a forma de stream e do dado que está armazenado no conteúdo e também uma setinha para representar a
que está ligado com o próximo tá então conca conca treinamos isso aqui nessa linha vazia e também temos que avançar com o ponteiro então ponteiro igual ao seu próximo e finalmente retorna essa estranha e aí o sr torna a mesma esteja fazendo um local tão certo então vou dar uma edição aqui rapidinho pra gente fazer é manter negativo no interpretador tudo que a gente tinha uma lista para poder testar então pronto está na nossa lista a gente pode soltar aqui ó está então 7 passa 80 depois 56 depois 32 aí depois invés de pôr 17,80
de novo porque seguir aqui na posição 4 e aí sim 17 e não tem ninguém certo próximo aqui no brasil a gente pedir pra exibir a lista dessa maneira a gente tem o mesmo resultado certo ótimo então vamos remover da lista vamos remover pra gente enxergar então começar removendo 80 que é um caso aqui que tem 22 valores né 80 aqui na segunda posição na na quinta posição também tentar remover 80 que vai acontecer como nosso código e vinha seqüencialmente até encontrar o elemento em remover a primeira ocorrência desse de 80 então a gente botar
aqui ah sim e pedi para exibir a nossa lista de novo o primeiro 80 foi embora recente rodar novamente aí sim a gente tem que ter perdido o segundo tempo vamos remover agora o set então a cabeça está sendo removida adequadamente esse agente remover o 17 também está lá 32 passou a ser o último elemento vai ter essa gente né depois de tudo isso que está faltando para a gente finalizar esse vídeo da fauna em finalizar complexidade dessas operações pra cá vamos implementar um jogo rápido isso bem tranquilo bem parecido com o que a gente
já já fez então aqui o esporte ele tem esse caso particular de quando nós queremos inserir na posição da cabeça na primeira posição da lista que é um caso que a gente faz apenas um número constante de operações aqui certo no caso duas operações alimentares então pra esse caso a complexidade seria hora de 11 porém qualquer caso diferente desse a gente pode considerar que pode ver em algum índice é bem alto pode ser inclusive o último o último índice da lista e aí por conta disso vai analisar complexidade do pior caso eo pior caso é
o mesmo do apêndice finalizou no vídeo anterior então pro aprendi a gente precisa passar por todos os elementos da lista um por um net por next até chegar no último aquele que tem o next vazio ea gente vai lá e agrega mais um nollie então por conta disso a complexidade dessa operação de inserir ela é o dn certo porque tem que passar por todos os n elementos da lista uma vez pelo menos e aí a de remoção ela também é parecida com o indec a gente olhou a busca e aí ô ô ô pior caso
dela também ocorre quando a gente passa pela luta inteira qual é o pior caso emoções tentar remover um elemento que não está na lista então a gente vai conseguir afirmar com certeza que o evento não está na lista depois de passar por todos os elementos da lista tá certo então a complexidade do pior caso para esse algoritmo de remoção ela também é o dn porque a gente precisa passar por todos os elementos da lista então é isso nós temos uma lista em educação encadeado em que é a inserção remoção ea busca acontecem em ódio n
depois num próximo vídeo a gente vai poder analisar algumas vantagens e desvantagens em relação ao estilo cascão seqüencial e a lista em educação encadeada porque a princípio parece que só tem desvantagem mas existem uma vantagem sim então é isso vai ficando por aqui você tem entendido como funciona as operações de inserção e remoção em uma lista em educação encadeado eu sei que esse assunto um pouquinho mais complicado né e costuma ser mais abstrato as pessoas enxergam como uma mais abstrato que os demais e ele é mesmo tá por isso é importante que você entenda como
ocorre essas relações divulgação entre os nós como eu falei é muito importante entender que o desenho a do vídeo sobre noel locação encadeado e também molhado no código experimente você pode testar vou deixar o link aqui embaixo na descrição tá certo se você gostou do vídeo não esqueça de deixar o seu lixo e nem se inscreve no canal para dar aquele apoio ao trabalho dúvidas sugestões são sempre bem-vindos aqui nos comentários muito obrigado e até a próxima