public void Remover(int x)// Letra C { elemento aux = inicio; elemento ant = null; while (aux != null && aux.valor != x) { ant = aux; aux = aux.próximo; } if (aux == null) { Console.WriteLine("Valor não encontrado!"); } else { if (ant == null) { inicio = aux.próximo; } else { ant.próximo = aux.próximo; } } }
public void InserirDepois(int x, int y) //letra I { elemento aux = inicio; elemento novo; elemento lul = new elemento(); while (aux != null && aux.valor != y) { aux = aux.próximo; } if (aux == null) { Console.WriteLine("Valor não encontrado!"); } else { lul = Pesquisar(x); if (lul != null) { Console.WriteLine("Este número já existe na lista"); } else { novo = new elemento(); novo.valor = x; novo.próximo = aux.próximo; aux.próximo = novo; } } }
public void ExibirRec(elemento e) //letra B recursivo { if (e != null) { Console.Write("{0} ", e.valor); ExibirRec(e.próximo); } }
public void Exibir() //letra B interativo { elemento aux = inicio; while (aux != null) { Console.Write("{0} ", aux.valor); aux = aux.próximo; } }
public elemento PesquisarRec(int x, elemento e) //letra A recursivo { if (e == null || e.valor == x) { return(e); } else { return(PesquisarRec(x, e.próximo)); } }
public int SomaRec(elemento aux) //recursivo Letra K { if (aux == null) { return(0); } else { return(aux.valor + (SomaRec(aux.próximo))); } }
public elemento Pesquisar(int x) //letra A { elemento aux = inicio; while (aux != null && aux.valor != x) { aux = aux.próximo; } return(aux); }
public int Contagem() //letra D Interativo { elemento aux = inicio; int cont = 0; while (aux != null) { cont = cont + 1; aux = aux.próximo; } return(cont); }
public int Soma(elemento aux)//iterativo Letra K { int soma = 0; while (aux != null) { soma = soma + aux.valor; aux = aux.próximo; } return(soma); }
public int ContagemRec(elemento e) // letra D recursivo { int cont = 0; if (e == null) { return(cont); } else { cont = 1 + ContagemRec(e.próximo); } return(cont); }
public int quantosMaiores(int valor) //letra j interativo { elemento aux = inicio; int maior = 0; while (aux != null) { if (aux.valor > valor) { maior = maior + 1; } aux = aux.próximo; } return(maior); }
public int quantosMaioresRec(elemento e, int num) //letra j recursivo { int result = 0; if (e != null) { if (e.valor > num) { result = 1 + quantosMaioresRec(e.próximo, num); } quantosMaioresRec(e.próximo, num); } return(result); }
public void Troca(int x, int y) // Letra L { elemento aux = new elemento(); elemento aux2 = new elemento(); aux = Pesquisar(x); aux2 = Pesquisar(y); if (aux == null || aux2 == null) { Console.WriteLine("\nAlgum dos valores é nulo!"); } else { aux.valor = y; aux2.valor = x; } }
public void Inserir(int e) // letra G { elemento novo = new elemento(); elemento aux = new elemento(); aux = Pesquisar(e); if (aux == null) { novo.valor = e; novo.próximo = inicio; inicio = novo; } else { Console.WriteLine("Número já existente!"); } }
public void InserirAntes(int x, int y) //letra H { elemento aux = inicio; elemento ant = new elemento(); elemento novo; elemento lul = new elemento(); while ((aux != null) && (aux.valor != y)) { ant = aux; aux = aux.próximo; } if (aux == null) { Console.WriteLine("Valor não encontrado "); } else { lul = Pesquisar(x); if (lul != null) { Console.WriteLine("Número já existente!"); } else { novo = new elemento(); novo.valor = x; novo.próximo = aux; if (ant == null) { novo.próximo = inicio; inicio = novo; } else { novo.próximo = ant.próximo; ant.próximo = novo; } } } }