Duvida remover x é = a inserir todos elementos até x-1?

Bom essa duvida me surgiu agora…
removendo os elementos na ordem contraria que estou inserindo eles
ex: Inserindo(1,2,3,4,5,6), arvore ficaria~~>
…4
…/…
…2…5
…/…
…1…3…6
Removendo(6,5,4,3,2,1)

mais se inves de aplicar um algoritmo de remoção eu somente inserise todos os elementos novamente
so que invez de eu ir até o “6” eu iria parar no “5”

…4
…/…
…2…5
…/ \
…1…3
Proximo a remover “5”, adicionaria até o “4”
…2
…/…
…1…3
…\
…4
e assim por diante estou falando 1 grande besteira ou o que estou dizendo é algo proximo a realidade
eu fiz uns “testes”, rodei umas 3 vezes 1 programa que o professor passou fazendo este método de inserir até o elemento x-1 e comparando o resultado obitido com o resultado de somente remover e aparentemente deu a mesma coisa.
quero uma opnião sincera sobre esta ganbiarra que estou prestes a fazer.

É importante notar que o conceito de funcionar ou não funcionar (mais lógico) é distinto do conceito de ser ou não gambiarra (mais subjetivo).

Pelos requisitos apresentados, parece funcionar mas, na minha opinião, não deixa de ser gambi. Seria algo para ser feito em último caso como, por exemplo, último dia de entrega de trabalho da faculdade. Mas se o professor estiver considerando complexidade algorítmica ou coisa do tipo, ele acabará não passando.

Se não errei nas contas, remover um elemento possui complexidade O(log(n)) da maneira tradicional e O(n) no seu algoritmo. Para remover todos, é O(n) contra O(n^2). Para um conjunto grande de elementos, faz uma enorme diferença. Se tiver tempo, implemente do jeito “normal” que, além de funcionar para o caso geral (remoção em qualquer ordem), é muito mais eficiente.

Gambis são interessantes para treinarmos nossa lógica, pensarmos de maneiras diferentes, mas é bom evitar.

[quote=regis_hideki][quote=l1511s]

e assim por diante estou falando 1 grande besteira ou o que estou dizendo é algo proximo a realidade
eu fiz uns “testes”, rodei umas 3 vezes 1 programa que o professor passou fazendo este método de inserir até o elemento x-1 e comparando o resultado obitido com o resultado de somente remover e aparentemente deu a mesma coisa.
quero uma opnião sincera sobre esta ganbiarra que estou prestes a fazer.

[/quote]

É importante notar que o conceito de funcionar ou não funcionar (mais lógico) é distinto do conceito de ser ou não gambiarra (mais subjetivo).

Pelos requisitos apresentados, parece funcionar mas, na minha opinião, não deixa de ser gambi. Seria algo para ser feito em último caso como, por exemplo, último dia de entrega de trabalho da faculdade. Mas se o professor estiver considerando complexidade algorítmica ou coisa do tipo, ele acabará não passando.

Se não errei nas contas, remover um elemento possui complexidade O(log(n)) da maneira tradicional e O(n) no seu algoritmo. Para remover todos, é O(n) contra O(n^2). Para um conjunto grande de elementos, faz uma enorme diferença. Se tiver tempo, implemente do jeito “normal” que, além de funcionar para o caso geral (remoção em qualquer ordem), é muito mais eficiente.

Gambis são interessantes para treinarmos nossa lógica, pensarmos de maneiras diferentes, mas é bom evitar.

[/quote]
bom como vc disse isso deve ser feito no ultimo caso, bem tenho q entregar esse alg até dia 12 e eu fiz 1 método de remoção q esta funcionando perfeitamente porém não estou conseguindo implementar o algoritimo para verificar o balanceamento… estou “quebrando” a cabeça para tentar implementa esse balanceamento se até dia 11 não conseguir nada vo tentar essa gambiarra mesmo

Se formos considerar balanceamento, seu algoritmo não funciona do jeito que está

Se for AVL, tenta dar uma olhada nesta apostila: http://www.uspleste.usp.br/digiampietri/ACH2023/ACH2023.pdf

Nela, tem a explicação do algoritmo e o código em C.