0% encontró este documento útil (0 votos)
13 vistas5 páginas

3 1papeleria

El documento describe una aplicación de papelería en Java que permite capturar y mostrar artículos en orden inverso. Incluye clases como 'Nodo', 'Lista' y 'MiApli', donde 'Lista' gestiona la colección de artículos y 'MiApli' se encarga de la interacción con el usuario. Se detallan las complejidades de los métodos utilizados para agregar artículos y mostrarlos en orden inverso.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
13 vistas5 páginas

3 1papeleria

El documento describe una aplicación de papelería en Java que permite capturar y mostrar artículos en orden inverso. Incluye clases como 'Nodo', 'Lista' y 'MiApli', donde 'Lista' gestiona la colección de artículos y 'MiApli' se encarga de la interacción con el usuario. Se detallan las complejidades de los métodos utilizados para agregar artículos y mostrarlos en orden inverso.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

3.

1 Papelería
Diagrama UML

Clase Nodo
package papeleria;
public class Papeleria {

public static void main(String[] args) {


MiApli app = new MiApli();
[Link](); // Captura de los artículos
[Link]("Artículos en orden inverso:");
[Link](); // Muestra los artículos en orden inverso
}
}
Clase Lista
package papeleria;
public class Lista {
Nodo head;

// Constructor
public Lista() {
[Link] = null;
}

// Método para agregar un nuevo artículo a la lista


// Complejidad: O(n) ya que debe recorrer la lista hasta el final para
agregar el nodo
public void add(String item) {
Nodo newNode = new Nodo(item);
if (head == null) {
head = newNode;
} else {
Nodo current = head;
while ([Link] != null) {
current = [Link];
}
[Link] = newNode;
}
}

// Método para verificar si la lista está vacía


// Complejidad: O(1)
public boolean isEmpty() {
return head == null;
}
}

Clase MiApli
import [Link];

public class MiApli {


Lista lista;

// Constructor
public MiApli() {
lista = new Lista();
}

// Complejidad: O(n) para agregar n artículos a la lista


public void captura() {
Scanner scanner = new Scanner([Link]);
[Link]("Introduce al menos 20 artículos de papelería:");
for (int i = 0; i < 20; i++) {
[Link]("Artículo " + (i + 1) + ": ");
String item = [Link]();
[Link](item);
}
[Link]();
}

// Método recursivo para mostrar los artículos en orden inverso


// Complejidad: O(n) ya que recorre la lista hasta el final
public void mostrarInverso(Nodo nodo) {
if (nodo == null) {
return;
}
mostrarInverso([Link]); // Llamada recursiva
[Link]([Link]); // Imprimir después de la llamada
recursiva para invertir el orden
}

// Método para iniciar el proceso de mostrar en inverso, empezando


desde la cabeza de la lista
public void mostrarInverso() {
mostrarInverso([Link]);
}

Clase Papelería
public class Papeleria {

public static void main(String[] args) {


MiApli app = new MiApli();
[Link](); // Captura de los artículos
[Link]("Artículos en orden inverso:");
[Link](); // Muestra los artículos en orden inverso

También podría gustarte