Java - Necesito LLamar a un metodo para crear Nodo en estructura de datos

 
Vista:
sin imagen de perfil
Val: 6
Ha aumentado 1 puesto en Java (en relación al último mes)
Gráfica de Java

Necesito LLamar a un metodo para crear Nodo en estructura de datos

Publicado por caye (3 intervenciones) el 29/06/2020 17:25:24
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
//Clase Main, solo hay 3 clases y necesito crear un metodo o usar para crear un  nodo usando el menu de opciones
 
 
package a1_listaenlazada;
 
import java.util.Scanner;
 
public class A1_ListaEnlazada {
 
 
    public static void main(String[] args) {
 
        Lista Nodo= new Lista();
        Nodo.insertarInicio2(null);
        Nodo.insertarMedio(null, null);
        Nodo.insertarFinal(null);
        Nodo.buscarNodo(null);
        Nodo.eliminarNodo(null);
        Nodo.mostrarLista();
        Nodo.actualizarNodo(null, null);
 
 
 
 
        Scanner sc= new Scanner(System.in);
 
        boolean salida=false;
 
        int respuesta;
 
        while(!salida){
 
            System.out.println("Presione ´1´ para insertar nodo");
            System.out.println("Presione ´2´ para insertar nodo al principio");
            System.out.println("Presione ´3´ para insertar nodo en el centro");
            System.out.println("Presione ´4´ para insertar nodo al final");
            System.out.println("Presione ´5´ para buscar nodo");
            System.out.println("Presione ´6´ para eliminar nodo");
            System.out.println("Presione ´7´ para mostrar lista");
            System.out.println("Presione ´8´ para actualizar nodo");
            System.out.println("Presione ´9´ para salir del programa");
 
            System.out.println("Elige una opción para ejecutar");
 
            respuesta=sc.nextInt();
 
            if (respuesta==1){
 
            }if (respuesta==2) {
            }if (respuesta==3){
 
            }if (respuesta==4){
 
            }if (respuesta==5){
                System.out.println("");
            }if (respuesta==6){
                System.out.println("");
            }if (respuesta==7){
                System.out.println("Lista");
                Nodo.mostrarLista();
            }if (respuesta==8){
                System.out.println("");
            }if (respuesta==9){
                salida=true;
            }else{
                System.out.println("La opción no es correcta");
            }
 
 
        }
 
    }
 
}



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
//Clase Lista
 
 
package a1_listaenlazada;
 
public class Lista {
    private Nodo cabeza;
    public Lista(){
        cabeza=null;
    }
    public void insertarInicio(Nodo nuevo){
        if(cabeza==null) //se preguntando si la lista está vacía
            cabeza=nuevo;
        else{
            nuevo.actEnlace(cabeza);// (1)
            cabeza=nuevo; //(2)
        }
    }
    public void insertarInicio2(Nodo nuevo){
        nuevo.actEnlace(cabeza);
        cabeza=nuevo;
    }
    public void insertarMedio(Nodo nuevo, String nom){
        Nodo despues;
        if(cabeza != null){
             despues = buscarNodo(nom);
            if(despues != null){
                nuevo.actEnlace(despues.retEnlace());
                despues.actEnlace(nuevo);
            }
            else{
                System.out.println(nom+" No existe, no se puede insertar el nodo");
            }
        }
        else{
            System.out.println("La lista está vacía, se insertará al inicio");
            insertarInicio2(nuevo);
        }
    }
    public void insertarFinal(Nodo nuevo){
        Nodo ultimo=cabeza;
        if(cabeza == null){
            cabeza=nuevo;
        }
        else{
            while(ultimo.retEnlace() != null){
                ultimo = ultimo.retEnlace();
            }
            ultimo.actEnlace(nuevo);
        }
    }
    public Nodo buscarNodo(String nom){
        Nodo aqui = cabeza;
        if(cabeza != null){
            while(!nom.equals(aqui.retNombre()) && aqui.retEnlace() != null )
                aqui = aqui.retEnlace();
            if(nom.equals(aqui.retNombre()))
                return aqui;
            else
                return null;
        }
        else{
            System.out.println("La Lista Enlazada está vacía");
            return null;
        }
 
    }
    public void eliminarNodo(String nom){
        Nodo eliminar = cabeza;
        Nodo anterior = null;
        if(cabeza != null){
            while(!nom.equals(eliminar.retNombre()) && eliminar.retEnlace() != null){
                anterior = eliminar;
                eliminar = eliminar.retEnlace();
            }
            if(nom.equals(eliminar.retNombre())){
                if(eliminar == cabeza)
                    cabeza = cabeza.retEnlace(); //cabeza = eliminar.retEnlace();
                else
                    anterior.actEnlace(eliminar.retEnlace());
            }
            else{
                System.out.println(nom+" no existe, no se puede eliminar!!!");
            }
        }
        else{
            System.out.println("La lista está vacía, no se puede eliminar a "+nom);
        }
 
    }
    public void mostrarLista(){
        Nodo aqui=cabeza;
        if(cabeza != null){
            while(aqui != null){
                aqui.mostrarNodo();
                aqui=aqui.retEnlace();
            }
            System.out.println("\n\tSe mostraron todos los nodos de la lista\n");;
        }
        else{
            System.out.println("Lista enlazada vacía, no hay nodos para mostrar\n");
        }
    }
    public void actualizarNodo(String nom, String nuevoNombre){
        Nodo modificar = buscarNodo(nom);
        if(modificar != null)
            modificar.actNombre(nuevoNombre);
        else
            System.out.println(nom + " No existe, no se puede actualizar");
    }
 
    public void nuevoNodo (String nom){
        String nombre = nom;
        Nodo enlace=null; //cuando creamos el nodo aún no está en la lista enlazada
    }
 }



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
//Clase Nodo
 
package a1_listaenlazada;
 
public class Nodo {
    private String nombre;
    private Nodo enlace;
    public void nuevoNodo (String nom){
        nombre=nom;
        enlace=null; //cuando creamos el nodo aún no está en la lista enlazada
    }
    public void actNombre(String nom){
        nombre=nom;
    }
    public void actEnlace(Nodo enl){
        enlace=enl;
    }
    public String retNombre(){
        return nombre;
    }
    public Nodo retEnlace(){
        return enlace;
    }
    public void mostrarNodo(){
        System.out.println(nombre+"\t\t"+enlace);
    }
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder