Estou precisando do código ou de uma ajuda em lista ordenada por um inteiro, é um projeto da faculdade e os livros são muito confusos. Meu professor quer que seja implementado, só que ele disse que por recursão é mais facíl.
Como vc está cursando E.D., provavelmente você deverá implementar utilizando algum algorítmo de ordenação (bubble sort, quick sort, etc…). Um bom livro com certeza vai ajudar.
Além do que o Google é uma ótima fonte de ajuda.
N
Neo
Como assim lista ordenada por inteiro ???
Eu tenho códigos de listas ordenadas, qualquer coisa em manda uma mensagem privada com seu e-mail e depois te mando os fontes.
J
JBoy_
Eu consegui fazer a lista mas me deu um erro na hora da exclusão. Quando eu excluo o último tudo certo, mas ai quando eu excluo o primeiro ele deixa de listar o último que ficou. Alguém saberia me dizer o que foi que deu errado ?
classNo{privateintinfo;privateNoprox;//próximo nó//construtorpublicNo(intinfo){this.info=info;prox=null;}//construtor q recebe outro nópublicNo(Noprox){this.prox=prox;}publicvoidsetProx(Noprox){this.prox=prox;}publicNogetProx(){returnprox;}publicvoidsetInfo(intinfo){this.info=info;}publicintgetInfo(){returninfo;}//verifica o prox deste nó existepublicbooleanexisteProx(){if(this.getProx()!=null)returntrue;returnfalse;}}
publicclassLista{privateNoinit;//primeiro nó da lista//construtor, inicializa o init como nullpublicLista(){init=null;}//contrutor, inicializa o init com o valor recebidopublicLista(intinfo){init=newNo(info);}//calcula o tamanho da listapublicinttamanho(){Noaux=init;intcont=1;while(aux.existeProx()){cont++;aux=aux.getProx();}returncont;}//insere um nó no final da listapublicbooleaninsereNo(intinfo){Noaux=newNo(init);while(aux.existeProx()){aux=aux.getProx();if(aux.getInfo()==info)returnfalse;}aux.setProx(newNo(info));returntrue;}//busca e remove o nó do valor informadopublicvoidremoveNo(intinfo){if(init.getInfo()==info){init=init.getProx();return;}Noaux=init;while(aux.existeProx()){if(aux.getProx().getInfo()==info){aux.setProx(aux.getProx().getProx());break;}aux=aux.getProx();}}//imprime em console os valores guardados na listapublicvoidimprime(){Noaux=newNo(init);while(aux.existeProx()){System.out.print(aux.getProx().getInfo()+" ");aux=aux.getProx();}System.out.println("");}//retorna uma String com os valores guardados na listapublicStringBuffertexto(){StringBuffertexto=newStringBuffer();Noaux=newNo(init);while(aux.existeProx()){texto.append(aux.getProx().getInfo()+" ");aux=aux.getProx();}returntexto;}publicstaticvoidmain(Stringargs[]){Listalista=newLista(10);}}
É uma lista de números inteiros, mas fazendo algumas modificações, pode armazendar qualquer coisa.
Espero ter ajudado! :puppydogeyes:
louds
Ai vai um exemplo bem safado de ordenacao com listas ligadas usando merge sort, se tiver algum erro, me desculpe, isso eu tirei da cabeca agora: