MuriloHB
-
Posts
6 -
Cadastrado em
-
Última visita
Tópicos solucionados
-
O post de MuriloHB em Ordenar Pilha Encadeada foi marcado como solução
Caso alguem tenha alguma dúvida, o problema se encontrava na função push, especificamenten o trecho:
aux = P->topo; while(aux != NULL && aux->info > x ){ proximo = aux; aux = aux->ant; } proximo->ant = p; p->ant = aux; } proximo = NULL; aux = NULL; } Realizei a seguinte alteração:
aux = P->topo; //vai procurar o lugar correto pra inserir o elemento while(aux != NULL && aux->info > x ){ proximo = aux; aux = aux->ant; } // se tiver que inserir no começo if (aux == P->topo) { p->ant = P->topo; P->topo = p; } // se for no final else if (aux == NULL) { proximo->ant = p; p->ant = NULL; } // se for no meio else { p->ant = aux; proximo->ant = p; } } proximo = NULL; aux = NULL; } Agora o programa roda normalmente!
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais