Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package CatenaDoppia;
- import java.io.Console;
- import java.util.Scanner;
- import CatenaDoppia.linkedList;
- import CatenaDoppia.Node;
- public class run {
- public static void main(String[] args)
- {
- Scanner scan = new Scanner(System.in);
- linkedList list = new linkedList();
- System.out.println("\nCatena circolare Doppia\n");
- char carattere;
- char carattere2;
- do{
- System.out.println("Inserire informazione e chiave per il primo nodo Head:");
- System.out.print("informazione:");
- String informazione0 = scan.next();
- System.out.print("chiave:");
- int chiave0 = scan.nextInt();
- while (chiave0 < 1 || chiave0 > 1000000) {
- System.out.println("Inserire chiave compresa fra 1 e 10^6");
- System.out.print("chiave:");
- chiave0 = scan.nextInt();
- if (chiave0 >= 1 || chiave0 <= 1000000) {
- list.inserireFirst(informazione0, chiave0);
- }
- }
- list.inserireFirst(informazione0, chiave0);
- list.size++;
- list.display();
- list.getFirst();
- System.out.println("\nVuoi continuare? Digita: 'y' oppure 'n'");
- System.out.print("Scelta:");
- carattere2 = scan.next().charAt(0);
- while (carattere2 == 'Y' || carattere2 == 'y');{
- }
- if (carattere2 == 'N' || carattere2 == 'n') {
- System.out.println("\nFine delle operazioni.\nRipartire il programma.");
- }
- }while(list.getFirst() == null);
- do {
- System.out.println("Operazioni da fare:");
- System.out.println("1. inserire all'inizio");
- System.out.println("2. inserire nuovo nodo");
- System.out.println("3. inserire alla fine");
- System.out.println("4. inserire a posizione 'x'");
- System.out.println("5. cancellare a posizione 'x'");
- System.out.println("6. verifica se la catena è vuota");
- System.out.println("7. lunghezza catena");
- System.out.println("8. dammi head");
- System.out.println("9. dammi tail");
- System.out.print("Scelta:");
- int choice2 = scan.nextInt();
- switch (choice2) {
- case 1:
- System.out.println("Inserire Informazione e chiave per il nodo");
- System.out.print("informazione:");
- String informazione = scan.next();
- System.out.print("chiave:");
- int chiave = scan.nextInt();
- while (chiave < 1 || chiave > 1000000) {
- System.out.println("Inserire chiave compresa fra 1 e 10^6");
- System.out.print("chiave:");
- chiave = scan.nextInt();
- if (chiave >= 1 || chiave <= 1000000) {
- list.inserireFirst(informazione, chiave);
- }
- }
- list.inserireFirst(informazione, chiave);
- break;
- case 2:
- int pos = 2;
- System.out.println("Inserire informazione e chiave per il nodo");
- String informazione4 = scan.next();
- int chiave4 = scan.nextInt();
- while (chiave4 < 1 || chiave4 > 1000000) {
- System.out.println("Inserire chiave compresa fra 1 e 10^6");
- System.out.print("chiave:");
- chiave = scan.nextInt();
- if (chiave >= 1 || chiave <= 1000000) {
- list.inserireSecondo(informazione4, chiave, pos);
- }
- }
- list.inserireSecondo(informazione4, chiave4, pos);
- break;
- case 3:
- System.out.println("Inserire Informazione e chiave per il nodo");
- System.out.print("informazione:");
- String informazione2 = scan.next();
- System.out.print("chiave:");
- int chiave2 = scan.nextInt();
- while (chiave2 < 1 || chiave2 > 1000000) {
- System.out.println("Inserire chiave compresa fra 1 e 10^6");
- System.out.print("chiave:");
- chiave2 = scan.nextInt();
- if (chiave2 >= 1 || chiave2 <= 1000000) {
- list.inserireLast(informazione2, chiave2);
- }
- }
- list.inserireLast(informazione2, chiave2);
- break;
- case 4:
- System.out.println("Inserire Informazione e chiave per il nodo");
- int pos2 = 0;
- String informazione3 = scan.next();
- int chiave3 = scan.nextInt();
- while (chiave3 < 1 || chiave3 > 1000000) {
- System.out.println("Inserire chiave compresa fra 1 e 10^6");
- System.out.print("chiave:");
- chiave = scan.nextInt();
- if (chiave3 >= 1 || chiave3 <= 1000000) {
- list.inserirePosizione(informazione3, chiave3, pos2);
- }
- }
- System.out.print("Inserire posizione: ");
- pos2 = scan.nextInt();
- if (pos2 < 1 || pos2 > list.getSize())
- System.out.println("La posiozione inserita non è valida nella catena");
- else
- list.inserirePosizione(informazione3, chiave3, pos2);
- break;
- case 5:
- System.out.println("Inserire posizione\n");
- int p = scan.nextInt();
- if (p < 1 || p > list.getSize())
- System.out.println("La posiozione inserita non è valida nella catena ");
- else
- list.cancellaPosiozione(p);
- break;
- case 6:
- System.out.println("Catena vuota= " + list.isEmpty());
- break;
- case 7:
- System.out.println("Lunghezza = " + list.getSize());
- break;
- case 8:
- System.out.print("First Element :");
- list.getFirst();
- System.out.println();
- break;
- case 9:
- System.out.print("Last Element :");
- list.getLast();
- System.out.println();
- break;
- }
- /*
- * } /* Display List
- */
- list.display();
- list.getFirst();
- System.out.println("\nVuoi continuare? Digita: 'y' oppure 'n'");
- System.out.print("Scelta:");
- carattere = scan.next().charAt(0);
- } while (carattere == 'Y' || carattere == 'y');
- if (carattere == 'N' || carattere == 'n') {
- System.out.println("\nFine delle operazioni.\nRipartire il programma.");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement