diff --git a/.classpath b/.classpath
deleted file mode 100755
index 2197894..0000000
--- a/.classpath
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ba01454
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,200 @@
+
+# Created by https://www.gitignore.io/api/java,intellij,eclipse,maven
+# Edit at https://www.gitignore.io/?templates=java,intellij,eclipse,maven
+
+### Eclipse ###
+.metadata
+bin/
+tmp/
+*.tmp
+*.bak
+*.swp
+*~.nib
+local.properties
+.settings/
+.loadpath
+.recommenders
+
+# External tool builders
+.externalToolBuilders/
+
+# Locally stored "Eclipse launch configurations"
+*.launch
+
+# PyDev specific (Python IDE for Eclipse)
+*.pydevproject
+
+# CDT-specific (C/C++ Development Tooling)
+.cproject
+
+# CDT- autotools
+.autotools
+
+# Java annotation processor (APT)
+.factorypath
+
+# PDT-specific (PHP Development Tools)
+.buildpath
+
+# sbteclipse plugin
+.target
+
+# Tern plugin
+.tern-project
+
+# TeXlipse plugin
+.texlipse
+
+# STS (Spring Tool Suite)
+.springBeans
+
+# Code Recommenders
+.recommenders/
+
+# Annotation Processing
+.apt_generated/
+
+# Scala IDE specific (Scala & Java development for Eclipse)
+.cache-main
+.scala_dependencies
+.worksheet
+
+### Eclipse Patch ###
+# Eclipse Core
+.project
+
+# JDT-specific (Eclipse Java Development Tools)
+.classpath
+
+# Annotation Processing
+.apt_generated
+
+.sts4-cache/
+
+### Intellij ###
+# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
+# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
+
+# User-specific stuff
+.idea/**/workspace.xml
+.idea/**/tasks.xml
+.idea/**/usage.statistics.xml
+.idea/**/dictionaries
+.idea/**/shelf
+
+# Generated files
+.idea/**/contentModel.xml
+
+# Sensitive or high-churn files
+.idea/**/dataSources/
+.idea/**/dataSources.ids
+.idea/**/dataSources.local.xml
+.idea/**/sqlDataSources.xml
+.idea/**/dynamic.xml
+.idea/**/uiDesigner.xml
+.idea/**/dbnavigator.xml
+
+# Gradle
+.idea/**/gradle.xml
+.idea/**/libraries
+
+# Gradle and Maven with auto-import
+# When using Gradle or Maven with auto-import, you should exclude module files,
+# since they will be recreated, and may cause churn. Uncomment if using
+# auto-import.
+.idea/modules.xml
+.idea/*.iml
+.idea/modules
+*.iml
+*.ipr
+
+# CMake
+cmake-build-*/
+
+# Mongo Explorer plugin
+.idea/**/mongoSettings.xml
+
+# File-based project format
+*.iws
+
+# IntelliJ
+out/
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+# JIRA plugin
+atlassian-ide-plugin.xml
+
+# Cursive Clojure plugin
+.idea/replstate.xml
+
+# Crashlytics plugin (for Android Studio and IntelliJ)
+com_crashlytics_export_strings.xml
+crashlytics.properties
+crashlytics-build.properties
+fabric.properties
+
+# Editor-based Rest Client
+.idea/httpRequests
+
+# Android studio 3.1+ serialized cache file
+.idea/caches/build_file_checksums.ser
+
+### Intellij Patch ###
+# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
+
+# *.iml
+modules.xml
+.idea/misc.xml
+# *.ipr
+
+# Sonarlint plugin
+.idea/**/sonarlint/
+
+# SonarQube Plugin
+.idea/**/sonarIssues.xml
+
+# Markdown Navigator plugin
+.idea/**/markdown-navigator.xml
+.idea/**/markdown-navigator/
+
+### Java ###
+# Compiled class file
+*.class
+
+# Log file
+*.log
+
+# BlueJ files
+*.ctxt
+
+# Mobile Tools for Java (J2ME)
+.mtj.tmp/
+
+# Package Files #
+*.jar
+*.war
+*.nar
+*.ear
+*.zip
+*.tar.gz
+*.rar
+
+# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
+hs_err_pid*
+
+### Maven ###
+target/
+pom.xml.tag
+pom.xml.releaseBackup
+pom.xml.versionsBackup
+pom.xml.next
+release.properties
+dependency-reduced-pom.xml
+buildNumber.properties
+.mvn/timing.properties
+.mvn/wrapper/maven-wrapper.jar
+.flattened-pom.xml
+
+# End of https://www.gitignore.io/api/java,intellij,eclipse,maven
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 0000000..a01f50b
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+AlgoritmiStruttureDati
\ No newline at end of file
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..a3ae3a3
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 0000000..712ab9d
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.project b/.project
deleted file mode 100755
index 689b264..0000000
--- a/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
- AlgoritmiStruttureDati
-
-
-
-
-
- org.eclipse.jdt.core.javabuilder
-
-
-
-
-
- org.eclipse.jdt.core.javanature
-
-
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100755
index ace45ce..0000000
--- a/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.8
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..8557daa
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,16 @@
+
+
+ 4.0.0
+
+ org.fscotto
+ algoritmi-strutture-dati
+ 1.0
+
+
+ 1.8
+ 1.8
+
+
+
diff --git a/src/it/algoritmi/adt/AdaptablePriorityQueue.java b/src/main/java/org/fscotto/asd/adt/AdaptablePriorityQueue.java
similarity index 92%
rename from src/it/algoritmi/adt/AdaptablePriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/AdaptablePriorityQueue.java
index a482158..14786bd 100644
--- a/src/it/algoritmi/adt/AdaptablePriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/AdaptablePriorityQueue.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
public interface AdaptablePriorityQueue, V> extends PriorityQueue {
diff --git a/src/it/algoritmi/adt/BinaryTree.java b/src/main/java/org/fscotto/asd/adt/BinaryTree.java
similarity index 95%
rename from src/it/algoritmi/adt/BinaryTree.java
rename to src/main/java/org/fscotto/asd/adt/BinaryTree.java
index 45c5920..3463df1 100644
--- a/src/it/algoritmi/adt/BinaryTree.java
+++ b/src/main/java/org/fscotto/asd/adt/BinaryTree.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/** Un albero binario */
public interface BinaryTree extends Tree {
diff --git a/src/it/algoritmi/adt/CircularQueue.java b/src/main/java/org/fscotto/asd/adt/CircularQueue.java
similarity index 64%
rename from src/it/algoritmi/adt/CircularQueue.java
rename to src/main/java/org/fscotto/asd/adt/CircularQueue.java
index 9b487b6..3331e87 100644
--- a/src/it/algoritmi/adt/CircularQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/CircularQueue.java
@@ -1,10 +1,10 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
public interface CircularQueue extends Queue {
/**
* Sposta alla fine della coda il suo elemento iniziale.
- * Se la coda è vuota non fa niente.
+ * Se la coda � vuota non fa niente.
*/
void rotate();
diff --git a/src/it/algoritmi/adt/Deque.java b/src/main/java/org/fscotto/asd/adt/Deque.java
similarity index 81%
rename from src/it/algoritmi/adt/Deque.java
rename to src/main/java/org/fscotto/asd/adt/Deque.java
index f28c28b..d779f46 100644
--- a/src/it/algoritmi/adt/Deque.java
+++ b/src/main/java/org/fscotto/asd/adt/Deque.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/**
* Interfaccia che definisce una coda doppia: un contenitore di elementi con
@@ -9,13 +9,13 @@ public interface Deque {
/** Restituisce il numero di elementi presenti nella coda doppia. */
int size();
- /** Verifica se la coda doppia è vuota. */
+ /** Verifica se la coda doppia � vuota. */
boolean isEmpty();
- /** Restituisce il primo elemento, senza toglierlo (null se la coda è vuota). */
+ /** Restituisce il primo elemento, senza toglierlo (null se la coda � vuota). */
E first();
- /** Restituisce l'ultimo elemento, senza toglierlo (null se la coda è vuota). */
+ /** Restituisce l'ultimo elemento, senza toglierlo (null se la coda � vuota). */
E last();
/** Inserisce un elemento all'inizio della coda doppia. */
@@ -24,10 +24,10 @@ public interface Deque {
/** Inserisce un elemento alla fine della coda doppia. */
void addLast(E e);
- /** Elimina e restituisce il primo elemento della coda (null se è vuota). */
+ /** Elimina e restituisce il primo elemento della coda (null se � vuota). */
E removeFirst();
- /** Elimina e restituisce l'ultimo elemento della coda (null se è vuota). */
+ /** Elimina e restituisce l'ultimo elemento della coda (null se � vuota). */
E removeLast();
}
diff --git a/src/it/algoritmi/adt/Entry.java b/src/main/java/org/fscotto/asd/adt/Entry.java
similarity index 85%
rename from src/it/algoritmi/adt/Entry.java
rename to src/main/java/org/fscotto/asd/adt/Entry.java
index cd5c6cb..24d50a1 100644
--- a/src/it/algoritmi/adt/Entry.java
+++ b/src/main/java/org/fscotto/asd/adt/Entry.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/**
* Interfaccia per una coppia chiave-valore
diff --git a/src/it/algoritmi/adt/List.java b/src/main/java/org/fscotto/asd/adt/List.java
similarity index 96%
rename from src/it/algoritmi/adt/List.java
rename to src/main/java/org/fscotto/asd/adt/List.java
index 2b00a00..d9d0b45 100644
--- a/src/it/algoritmi/adt/List.java
+++ b/src/main/java/org/fscotto/asd/adt/List.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/** Una versione semplificata dell'interfaccia java.util.List. */
public interface List extends Iterable {
diff --git a/src/it/algoritmi/adt/Position.java b/src/main/java/org/fscotto/asd/adt/Position.java
similarity index 90%
rename from src/it/algoritmi/adt/Position.java
rename to src/main/java/org/fscotto/asd/adt/Position.java
index 0ab058f..f014b1e 100644
--- a/src/it/algoritmi/adt/Position.java
+++ b/src/main/java/org/fscotto/asd/adt/Position.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
public interface Position {
diff --git a/src/it/algoritmi/adt/PositionalList.java b/src/main/java/org/fscotto/asd/adt/PositionalList.java
similarity index 98%
rename from src/it/algoritmi/adt/PositionalList.java
rename to src/main/java/org/fscotto/asd/adt/PositionalList.java
index f58c5bf..358a674 100644
--- a/src/it/algoritmi/adt/PositionalList.java
+++ b/src/main/java/org/fscotto/asd/adt/PositionalList.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/** L'interfaccia che definisce liste posizionali. */
public interface PositionalList extends Iterable {
diff --git a/src/it/algoritmi/adt/PriorityQueue.java b/src/main/java/org/fscotto/asd/adt/PriorityQueue.java
similarity index 91%
rename from src/it/algoritmi/adt/PriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/PriorityQueue.java
index c712bda..e7b71b5 100644
--- a/src/it/algoritmi/adt/PriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/PriorityQueue.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/**
* Interfaccia per l' ADT coda prioritaria.
diff --git a/src/it/algoritmi/adt/Queue.java b/src/main/java/org/fscotto/asd/adt/Queue.java
similarity index 75%
rename from src/it/algoritmi/adt/Queue.java
rename to src/main/java/org/fscotto/asd/adt/Queue.java
index 3d43795..fcdfe5e 100644
--- a/src/it/algoritmi/adt/Queue.java
+++ b/src/main/java/org/fscotto/asd/adt/Queue.java
@@ -1,20 +1,20 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
public interface Queue {
/** Restituisce il numero di elementi presenti nella coda. */
public int size();
- /** Verifica se la coda è vuota. */
+ /** Verifica se la coda � vuota. */
public boolean isEmpty();
/** Inserisce un elemento in fondo alla coda. */
public void enqueue(E e);
- /** Elimina e restituisce il primo elemento della coda (null se è vuota). */
+ /** Elimina e restituisce il primo elemento della coda (null se � vuota). */
public E dequeue();
- /** Restituisce il primo elemento della coda, senza toglierlo (null se è vuota). */
+ /** Restituisce il primo elemento della coda, senza toglierlo (null se � vuota). */
public E first();
}
diff --git a/src/it/algoritmi/adt/Stack.java b/src/main/java/org/fscotto/asd/adt/Stack.java
similarity index 68%
rename from src/it/algoritmi/adt/Stack.java
rename to src/main/java/org/fscotto/asd/adt/Stack.java
index 4be8d20..52a0ffb 100644
--- a/src/it/algoritmi/adt/Stack.java
+++ b/src/main/java/org/fscotto/asd/adt/Stack.java
@@ -1,8 +1,8 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/**
* Una raccolta di oggetti che vengono inseriti e eliminati secondo il principio
- * last-in first-out. Anche se ha uno scopo simile, questa interfaccia è diversa da
+ * last-in first-out. Anche se ha uno scopo simile, questa interfaccia � diversa da
* java.util.Stack
*
* @author fscotto
@@ -17,8 +17,8 @@ public interface Stack {
int size();
/**
- * Verifica se la pila è vuota.
- * @return true se e solo se la pila è vuota
+ * Verifica se la pila � vuota.
+ * @return true se e solo se la pila � vuota
*/
boolean isEmpty();
@@ -31,13 +31,13 @@ public interface Stack {
/**
* Restituisce l'elemento in cima alla pila, senza eliminarlo.
- * @return l'elemento in cima alla pila (o null se la pila è vuota)
+ * @return l'elemento in cima alla pila (o null se la pila � vuota)
*/
E top();
/**
* Elimina e restituisce l'elemento che si trova in cima alla pila.
- * @return l'elemento eliminato (o null se la pila è vuota)
+ * @return l'elemento eliminato (o null se la pila � vuota)
*/
E pop();
diff --git a/src/it/algoritmi/adt/Tree.java b/src/main/java/org/fscotto/asd/adt/Tree.java
similarity index 98%
rename from src/it/algoritmi/adt/Tree.java
rename to src/main/java/org/fscotto/asd/adt/Tree.java
index 32120a1..eeab197 100644
--- a/src/it/algoritmi/adt/Tree.java
+++ b/src/main/java/org/fscotto/asd/adt/Tree.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt;
+package org.fscotto.asd.adt;
/** Un albero i cui nodi possono avere un numero di figli arbitrario. */
public interface Tree extends Iterable {
diff --git a/src/it/algoritmi/adt/dequeue/ArrayDeque.java b/src/main/java/org/fscotto/asd/adt/dequeue/ArrayDeque.java
similarity index 89%
rename from src/it/algoritmi/adt/dequeue/ArrayDeque.java
rename to src/main/java/org/fscotto/asd/adt/dequeue/ArrayDeque.java
index d64fed1..bec1adf 100644
--- a/src/it/algoritmi/adt/dequeue/ArrayDeque.java
+++ b/src/main/java/org/fscotto/asd/adt/dequeue/ArrayDeque.java
@@ -1,6 +1,6 @@
-package it.algoritmi.adt.dequeue;
+package org.fscotto.asd.adt.dequeue;
-import it.algoritmi.adt.Deque;
+import org.fscotto.asd.adt.Deque;
public class ArrayDeque implements Deque {
private E[] data;
diff --git a/src/it/algoritmi/adt/dequeue/LinkedDeque.java b/src/main/java/org/fscotto/asd/adt/dequeue/LinkedDeque.java
similarity index 78%
rename from src/it/algoritmi/adt/dequeue/LinkedDeque.java
rename to src/main/java/org/fscotto/asd/adt/dequeue/LinkedDeque.java
index 6dd45e1..435509b 100644
--- a/src/it/algoritmi/adt/dequeue/LinkedDeque.java
+++ b/src/main/java/org/fscotto/asd/adt/dequeue/LinkedDeque.java
@@ -1,7 +1,7 @@
-package it.algoritmi.adt.dequeue;
+package org.fscotto.asd.adt.dequeue;
-import it.algoritmi.adt.Deque;
-import it.algoritmi.adt.list.DoublyLinkedList;
+import org.fscotto.asd.adt.Deque;
+import org.fscotto.asd.adt.list.DoublyLinkedList;
public class LinkedDeque implements Deque {
private DoublyLinkedList l = new DoublyLinkedList<>();
diff --git a/src/it/algoritmi/adt/list/ArrayList.java b/src/main/java/org/fscotto/asd/adt/list/ArrayList.java
similarity index 98%
rename from src/it/algoritmi/adt/list/ArrayList.java
rename to src/main/java/org/fscotto/asd/adt/list/ArrayList.java
index b6bf000..aec651e 100644
--- a/src/it/algoritmi/adt/list/ArrayList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/ArrayList.java
@@ -1,8 +1,8 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
import java.util.Iterator;
import java.util.NoSuchElementException;
-import it.algoritmi.adt.List;
+import org.fscotto.asd.adt.List;
public class ArrayList implements List {
// variabili di esemplare
diff --git a/src/it/algoritmi/adt/list/CircularyLinkedList.java b/src/main/java/org/fscotto/asd/adt/list/CircularyLinkedList.java
similarity index 91%
rename from src/it/algoritmi/adt/list/CircularyLinkedList.java
rename to src/main/java/org/fscotto/asd/adt/list/CircularyLinkedList.java
index 983bee8..4ecd899 100644
--- a/src/it/algoritmi/adt/list/CircularyLinkedList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/CircularyLinkedList.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
public class CircularyLinkedList {
private Node tail = null;
diff --git a/src/it/algoritmi/adt/list/DoublyLinkedList.java b/src/main/java/org/fscotto/asd/adt/list/DoublyLinkedList.java
similarity index 92%
rename from src/it/algoritmi/adt/list/DoublyLinkedList.java
rename to src/main/java/org/fscotto/asd/adt/list/DoublyLinkedList.java
index 1daa16b..44f1597 100644
--- a/src/it/algoritmi/adt/list/DoublyLinkedList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/DoublyLinkedList.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
public class DoublyLinkedList {
private Node header;
@@ -51,7 +51,7 @@ public class DoublyLinkedList {
return size;
}
- /** Restituisce true se e solo se la lista è vuota */
+ /** Restituisce true se e solo se la lista � vuota */
public boolean isEmpty() {
return size == 0;
}
diff --git a/src/it/algoritmi/adt/list/FavoritesList.java b/src/main/java/org/fscotto/asd/adt/list/FavoritesList.java
similarity index 96%
rename from src/it/algoritmi/adt/list/FavoritesList.java
rename to src/main/java/org/fscotto/asd/adt/list/FavoritesList.java
index f24a797..b8ef011 100644
--- a/src/it/algoritmi/adt/list/FavoritesList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/FavoritesList.java
@@ -1,9 +1,9 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
import java.util.Iterator;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.PositionalList;
+import org.fscotto.asd.adt.PositionalList;
+import org.fscotto.asd.adt.Position;
/** Gestisce una lista di elementi ordinati in base alla frequenza di accesso. */
public class FavoritesList {
diff --git a/src/it/algoritmi/adt/list/FavoritesListMTF.java b/src/main/java/org/fscotto/asd/adt/list/FavoritesListMTF.java
similarity index 92%
rename from src/it/algoritmi/adt/list/FavoritesListMTF.java
rename to src/main/java/org/fscotto/asd/adt/list/FavoritesListMTF.java
index 658ce27..7605f8d 100644
--- a/src/it/algoritmi/adt/list/FavoritesListMTF.java
+++ b/src/main/java/org/fscotto/asd/adt/list/FavoritesListMTF.java
@@ -1,7 +1,7 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.PositionalList;
+import org.fscotto.asd.adt.PositionalList;
+import org.fscotto.asd.adt.Position;
/** Gestisce una lista di preferiti usando l'euristica move-to-front */
public class FavoritesListMTF extends FavoritesList {
diff --git a/src/it/algoritmi/adt/list/LinkedPositionalList.java b/src/main/java/org/fscotto/asd/adt/list/LinkedPositionalList.java
similarity index 98%
rename from src/it/algoritmi/adt/list/LinkedPositionalList.java
rename to src/main/java/org/fscotto/asd/adt/list/LinkedPositionalList.java
index 1954eba..8492ae1 100644
--- a/src/it/algoritmi/adt/list/LinkedPositionalList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/LinkedPositionalList.java
@@ -1,10 +1,10 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
import java.util.Iterator;
import java.util.NoSuchElementException;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.PositionalList;
+import org.fscotto.asd.adt.PositionalList;
+import org.fscotto.asd.adt.Position;
/** Implementazione di lista posizionale mediante lista doppiamente concatenata. */
public class LinkedPositionalList implements PositionalList {
diff --git a/src/it/algoritmi/adt/list/SinglyLinkedList.java b/src/main/java/org/fscotto/asd/adt/list/SinglyLinkedList.java
similarity index 93%
rename from src/it/algoritmi/adt/list/SinglyLinkedList.java
rename to src/main/java/org/fscotto/asd/adt/list/SinglyLinkedList.java
index bebaf90..b7fb8d0 100644
--- a/src/it/algoritmi/adt/list/SinglyLinkedList.java
+++ b/src/main/java/org/fscotto/asd/adt/list/SinglyLinkedList.java
@@ -1,4 +1,4 @@
-package it.algoritmi.adt.list;
+package org.fscotto.asd.adt.list;
public class SinglyLinkedList implements Cloneable {
private Node head = null;
diff --git a/src/it/algoritmi/adt/queue/AbstractPriorityQueue.java b/src/main/java/org/fscotto/asd/adt/queue/AbstractPriorityQueue.java
similarity index 93%
rename from src/it/algoritmi/adt/queue/AbstractPriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/AbstractPriorityQueue.java
index 623e7f2..722a49e 100644
--- a/src/it/algoritmi/adt/queue/AbstractPriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/AbstractPriorityQueue.java
@@ -1,9 +1,9 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
import java.util.Comparator;
-import it.algoritmi.adt.Entry;
-import it.algoritmi.adt.PriorityQueue;
+import org.fscotto.asd.adt.Entry;
+import org.fscotto.asd.adt.PriorityQueue;
public abstract class AbstractPriorityQueue, V> implements PriorityQueue {
diff --git a/src/it/algoritmi/adt/queue/ArrayQueue.java b/src/main/java/org/fscotto/asd/adt/queue/ArrayQueue.java
similarity index 87%
rename from src/it/algoritmi/adt/queue/ArrayQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/ArrayQueue.java
index cdb8fe7..0c7fb89 100644
--- a/src/it/algoritmi/adt/queue/ArrayQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/ArrayQueue.java
@@ -1,6 +1,6 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
-import it.algoritmi.adt.Queue;
+import org.fscotto.asd.adt.Queue;
public class ArrayQueue implements Queue {
public static final int CAPACITY = 1000;
diff --git a/src/it/algoritmi/adt/queue/DoubleLinkedQueue.java b/src/main/java/org/fscotto/asd/adt/queue/DoubleLinkedQueue.java
similarity index 69%
rename from src/it/algoritmi/adt/queue/DoubleLinkedQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/DoubleLinkedQueue.java
index e0f2783..ecea7d4 100644
--- a/src/it/algoritmi/adt/queue/DoubleLinkedQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/DoubleLinkedQueue.java
@@ -1,8 +1,8 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
-import it.algoritmi.adt.Deque;
-import it.algoritmi.adt.Queue;
-import it.algoritmi.adt.dequeue.LinkedDeque;
+import org.fscotto.asd.adt.dequeue.LinkedDeque;
+import org.fscotto.asd.adt.Deque;
+import org.fscotto.asd.adt.Queue;
public class DoubleLinkedQueue implements Queue {
private Deque d = new LinkedDeque<>();
diff --git a/src/it/algoritmi/adt/queue/HeapAdaptablePriorityQueue.java b/src/main/java/org/fscotto/asd/adt/queue/HeapAdaptablePriorityQueue.java
similarity index 96%
rename from src/it/algoritmi/adt/queue/HeapAdaptablePriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/HeapAdaptablePriorityQueue.java
index 0ab65bc..86eb4db 100644
--- a/src/it/algoritmi/adt/queue/HeapAdaptablePriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/HeapAdaptablePriorityQueue.java
@@ -1,9 +1,9 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
import java.util.Comparator;
-import it.algoritmi.adt.AdaptablePriorityQueue;
-import it.algoritmi.adt.Entry;
+import org.fscotto.asd.adt.AdaptablePriorityQueue;
+import org.fscotto.asd.adt.Entry;
public class HeapAdaptablePriorityQueue, V> extends HeapPriorityQueue
implements AdaptablePriorityQueue {
diff --git a/src/it/algoritmi/adt/queue/HeapPriorityQueue.java b/src/main/java/org/fscotto/asd/adt/queue/HeapPriorityQueue.java
similarity index 98%
rename from src/it/algoritmi/adt/queue/HeapPriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/HeapPriorityQueue.java
index 6bce602..236276d 100644
--- a/src/it/algoritmi/adt/queue/HeapPriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/HeapPriorityQueue.java
@@ -1,9 +1,9 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
import java.util.ArrayList;
import java.util.Comparator;
-import it.algoritmi.adt.Entry;
+import org.fscotto.asd.adt.Entry;
public class HeapPriorityQueue, V> extends AbstractPriorityQueue {
diff --git a/src/it/algoritmi/adt/queue/LinkedCircularQueue.java b/src/main/java/org/fscotto/asd/adt/queue/LinkedCircularQueue.java
similarity index 60%
rename from src/it/algoritmi/adt/queue/LinkedCircularQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/LinkedCircularQueue.java
index 8c8e681..8085b2d 100644
--- a/src/it/algoritmi/adt/queue/LinkedCircularQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/LinkedCircularQueue.java
@@ -1,7 +1,7 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
-import it.algoritmi.adt.CircularQueue;
-import it.algoritmi.adt.list.CircularyLinkedList;
+import org.fscotto.asd.adt.CircularQueue;
+import org.fscotto.asd.adt.list.CircularyLinkedList;
public class LinkedCircularQueue extends LinkedQueue implements CircularQueue {
private CircularyLinkedList list = new CircularyLinkedList<>();
diff --git a/src/it/algoritmi/adt/queue/LinkedQueue.java b/src/main/java/org/fscotto/asd/adt/queue/LinkedQueue.java
similarity index 74%
rename from src/it/algoritmi/adt/queue/LinkedQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/LinkedQueue.java
index 8744be6..38a95ed 100644
--- a/src/it/algoritmi/adt/queue/LinkedQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/LinkedQueue.java
@@ -1,7 +1,7 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
-import it.algoritmi.adt.Queue;
-import it.algoritmi.adt.list.SinglyLinkedList;
+import org.fscotto.asd.adt.Queue;
+import org.fscotto.asd.adt.list.SinglyLinkedList;
public class LinkedQueue implements Queue {
private SinglyLinkedList list = new SinglyLinkedList<>();
diff --git a/src/it/algoritmi/adt/queue/SortedPriorityQueue.java b/src/main/java/org/fscotto/asd/adt/queue/SortedPriorityQueue.java
similarity index 86%
rename from src/it/algoritmi/adt/queue/SortedPriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/SortedPriorityQueue.java
index 9d11b62..cf11462 100644
--- a/src/it/algoritmi/adt/queue/SortedPriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/SortedPriorityQueue.java
@@ -1,11 +1,11 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
import java.util.Comparator;
-import it.algoritmi.adt.Entry;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.PositionalList;
-import it.algoritmi.adt.list.LinkedPositionalList;
+import org.fscotto.asd.adt.PositionalList;
+import org.fscotto.asd.adt.Entry;
+import org.fscotto.asd.adt.Position;
+import org.fscotto.asd.adt.list.LinkedPositionalList;
public class SortedPriorityQueue, V> extends AbstractPriorityQueue {
diff --git a/src/it/algoritmi/adt/queue/UnsortedPriorityQueue.java b/src/main/java/org/fscotto/asd/adt/queue/UnsortedPriorityQueue.java
similarity index 89%
rename from src/it/algoritmi/adt/queue/UnsortedPriorityQueue.java
rename to src/main/java/org/fscotto/asd/adt/queue/UnsortedPriorityQueue.java
index 89b715d..b312e0c 100644
--- a/src/it/algoritmi/adt/queue/UnsortedPriorityQueue.java
+++ b/src/main/java/org/fscotto/asd/adt/queue/UnsortedPriorityQueue.java
@@ -1,11 +1,11 @@
-package it.algoritmi.adt.queue;
+package org.fscotto.asd.adt.queue;
import java.util.Comparator;
-import it.algoritmi.adt.Entry;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.PositionalList;
-import it.algoritmi.adt.list.LinkedPositionalList;
+import org.fscotto.asd.adt.PositionalList;
+import org.fscotto.asd.adt.Entry;
+import org.fscotto.asd.adt.Position;
+import org.fscotto.asd.adt.list.LinkedPositionalList;
/** Un'implementazione di coda prioritaria mediante una lista non ordinata. */
public class UnsortedPriorityQueue, V> extends AbstractPriorityQueue {
diff --git a/src/it/algoritmi/adt/stack/ArrayStack.java b/src/main/java/org/fscotto/asd/adt/stack/ArrayStack.java
similarity index 86%
rename from src/it/algoritmi/adt/stack/ArrayStack.java
rename to src/main/java/org/fscotto/asd/adt/stack/ArrayStack.java
index 3730737..95c6bd1 100644
--- a/src/it/algoritmi/adt/stack/ArrayStack.java
+++ b/src/main/java/org/fscotto/asd/adt/stack/ArrayStack.java
@@ -1,6 +1,6 @@
-package it.algoritmi.adt.stack;
+package org.fscotto.asd.adt.stack;
-import it.algoritmi.adt.Stack;
+import org.fscotto.asd.adt.Stack;
public class ArrayStack implements Stack {
public static final int CAPACITY = 1000;
diff --git a/src/it/algoritmi/adt/stack/DoubledLinkedStack.java b/src/main/java/org/fscotto/asd/adt/stack/DoubledLinkedStack.java
similarity index 68%
rename from src/it/algoritmi/adt/stack/DoubledLinkedStack.java
rename to src/main/java/org/fscotto/asd/adt/stack/DoubledLinkedStack.java
index b187dab..b58a02b 100644
--- a/src/it/algoritmi/adt/stack/DoubledLinkedStack.java
+++ b/src/main/java/org/fscotto/asd/adt/stack/DoubledLinkedStack.java
@@ -1,8 +1,8 @@
-package it.algoritmi.adt.stack;
+package org.fscotto.asd.adt.stack;
-import it.algoritmi.adt.Deque;
-import it.algoritmi.adt.Stack;
-import it.algoritmi.adt.dequeue.LinkedDeque;
+import org.fscotto.asd.adt.dequeue.LinkedDeque;
+import org.fscotto.asd.adt.Deque;
+import org.fscotto.asd.adt.Stack;
public class DoubledLinkedStack implements Stack {
private Deque d = new LinkedDeque<>();
diff --git a/src/it/algoritmi/adt/stack/LinkedStack.java b/src/main/java/org/fscotto/asd/adt/stack/LinkedStack.java
similarity index 73%
rename from src/it/algoritmi/adt/stack/LinkedStack.java
rename to src/main/java/org/fscotto/asd/adt/stack/LinkedStack.java
index 1c15001..d8dfbb5 100644
--- a/src/it/algoritmi/adt/stack/LinkedStack.java
+++ b/src/main/java/org/fscotto/asd/adt/stack/LinkedStack.java
@@ -1,7 +1,7 @@
-package it.algoritmi.adt.stack;
+package org.fscotto.asd.adt.stack;
-import it.algoritmi.adt.Stack;
-import it.algoritmi.adt.list.SinglyLinkedList;
+import org.fscotto.asd.adt.Stack;
+import org.fscotto.asd.adt.list.SinglyLinkedList;
public class LinkedStack implements Stack {
private SinglyLinkedList list = new SinglyLinkedList<>();
diff --git a/src/it/algoritmi/adt/tree/AbstractBinaryTree.java b/src/main/java/org/fscotto/asd/adt/tree/AbstractBinaryTree.java
similarity index 95%
rename from src/it/algoritmi/adt/tree/AbstractBinaryTree.java
rename to src/main/java/org/fscotto/asd/adt/tree/AbstractBinaryTree.java
index 9953790..8528635 100644
--- a/src/it/algoritmi/adt/tree/AbstractBinaryTree.java
+++ b/src/main/java/org/fscotto/asd/adt/tree/AbstractBinaryTree.java
@@ -1,10 +1,10 @@
-package it.algoritmi.adt.tree;
+package org.fscotto.asd.adt.tree;
import java.util.ArrayList;
import java.util.List;
-import it.algoritmi.adt.BinaryTree;
-import it.algoritmi.adt.Position;
+import org.fscotto.asd.adt.BinaryTree;
+import org.fscotto.asd.adt.Position;
/** Una classe di base astratta che implementain parte l'interfaccia BinaryTree */
public abstract class AbstractBinaryTree extends AbstractTree implements BinaryTree {
diff --git a/src/it/algoritmi/adt/tree/AbstractTree.java b/src/main/java/org/fscotto/asd/adt/tree/AbstractTree.java
similarity index 95%
rename from src/it/algoritmi/adt/tree/AbstractTree.java
rename to src/main/java/org/fscotto/asd/adt/tree/AbstractTree.java
index decb0e7..dae49bb 100644
--- a/src/it/algoritmi/adt/tree/AbstractTree.java
+++ b/src/main/java/org/fscotto/asd/adt/tree/AbstractTree.java
@@ -1,12 +1,12 @@
-package it.algoritmi.adt.tree;
+package org.fscotto.asd.adt.tree;
import java.util.ArrayList;
import java.util.List;
-import it.algoritmi.adt.Position;
-import it.algoritmi.adt.Queue;
-import it.algoritmi.adt.Tree;
-import it.algoritmi.adt.queue.LinkedQueue;
+import org.fscotto.asd.adt.Tree;
+import org.fscotto.asd.adt.queue.LinkedQueue;
+import org.fscotto.asd.adt.Position;
+import org.fscotto.asd.adt.Queue;
/** Una classe di base astratta che implementa in parte l'interfaccia Tree. */
public abstract class AbstractTree implements Tree {
diff --git a/src/it/algoritmi/adt/tree/LinkedBinaryTree.java b/src/main/java/org/fscotto/asd/adt/tree/LinkedBinaryTree.java
similarity index 99%
rename from src/it/algoritmi/adt/tree/LinkedBinaryTree.java
rename to src/main/java/org/fscotto/asd/adt/tree/LinkedBinaryTree.java
index b91a79d..c8ccd69 100644
--- a/src/it/algoritmi/adt/tree/LinkedBinaryTree.java
+++ b/src/main/java/org/fscotto/asd/adt/tree/LinkedBinaryTree.java
@@ -1,8 +1,8 @@
-package it.algoritmi.adt.tree;
+package org.fscotto.asd.adt.tree;
import java.util.Iterator;
-import it.algoritmi.adt.Position;
+import org.fscotto.asd.adt.Position;
/** Implementazione concreta di albero binario usando nodi concatenati. */
public class LinkedBinaryTree extends AbstractBinaryTree {
diff --git a/src/it/algoritmi/test/ADTs.java b/src/main/java/org/fscotto/asd/demo/ADTs.java
similarity index 75%
rename from src/it/algoritmi/test/ADTs.java
rename to src/main/java/org/fscotto/asd/demo/ADTs.java
index 8b22e0f..8af1a70 100644
--- a/src/it/algoritmi/test/ADTs.java
+++ b/src/main/java/org/fscotto/asd/demo/ADTs.java
@@ -1,11 +1,11 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
-import it.algoritmi.adt.Deque;
-import it.algoritmi.adt.Queue;
-import it.algoritmi.adt.Stack;
-import it.algoritmi.adt.dequeue.ArrayDeque;
-import it.algoritmi.adt.queue.LinkedQueue;
-import it.algoritmi.adt.stack.ArrayStack;
+import org.fscotto.asd.adt.dequeue.ArrayDeque;
+import org.fscotto.asd.adt.queue.LinkedQueue;
+import org.fscotto.asd.adt.stack.ArrayStack;
+import org.fscotto.asd.adt.Deque;
+import org.fscotto.asd.adt.Queue;
+import org.fscotto.asd.adt.Stack;
public class ADTs {
diff --git a/src/it/algoritmi/test/ArithmeticMatcher.java b/src/main/java/org/fscotto/asd/demo/ArithmeticMatcher.java
similarity index 81%
rename from src/it/algoritmi/test/ArithmeticMatcher.java
rename to src/main/java/org/fscotto/asd/demo/ArithmeticMatcher.java
index 9d6cd38..f201b69 100644
--- a/src/it/algoritmi/test/ArithmeticMatcher.java
+++ b/src/main/java/org/fscotto/asd/demo/ArithmeticMatcher.java
@@ -1,7 +1,7 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
-import it.algoritmi.adt.Stack;
-import it.algoritmi.adt.stack.LinkedStack;
+import org.fscotto.asd.adt.stack.LinkedStack;
+import org.fscotto.asd.adt.Stack;
public class ArithmeticMatcher {
diff --git a/src/it/algoritmi/test/CaesarCipher.java b/src/main/java/org/fscotto/asd/demo/CaesarCipher.java
similarity index 94%
rename from src/it/algoritmi/test/CaesarCipher.java
rename to src/main/java/org/fscotto/asd/demo/CaesarCipher.java
index 6f16468..f76a227 100644
--- a/src/it/algoritmi/test/CaesarCipher.java
+++ b/src/main/java/org/fscotto/asd/demo/CaesarCipher.java
@@ -1,4 +1,4 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
public class CaesarCipher {
protected char[] encoder = new char[26];
diff --git a/src/it/algoritmi/test/CreditCard.java b/src/main/java/org/fscotto/asd/demo/CreditCard.java
similarity index 93%
rename from src/it/algoritmi/test/CreditCard.java
rename to src/main/java/org/fscotto/asd/demo/CreditCard.java
index d96ed05..160a8c3 100644
--- a/src/it/algoritmi/test/CreditCard.java
+++ b/src/main/java/org/fscotto/asd/demo/CreditCard.java
@@ -1,4 +1,4 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
public class CreditCard {
private String customer;
diff --git a/src/it/algoritmi/test/HTMLMatcher.java b/src/main/java/org/fscotto/asd/demo/HTMLMatcher.java
similarity index 80%
rename from src/it/algoritmi/test/HTMLMatcher.java
rename to src/main/java/org/fscotto/asd/demo/HTMLMatcher.java
index 1480765..238962c 100644
--- a/src/it/algoritmi/test/HTMLMatcher.java
+++ b/src/main/java/org/fscotto/asd/demo/HTMLMatcher.java
@@ -1,7 +1,7 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
-import it.algoritmi.adt.Stack;
-import it.algoritmi.adt.stack.LinkedStack;
+import org.fscotto.asd.adt.stack.LinkedStack;
+import org.fscotto.asd.adt.Stack;
public class HTMLMatcher {
diff --git a/src/it/algoritmi/test/Josephus.java b/src/main/java/org/fscotto/asd/demo/Josephus.java
similarity index 87%
rename from src/it/algoritmi/test/Josephus.java
rename to src/main/java/org/fscotto/asd/demo/Josephus.java
index afe3ac5..b8ce7ef 100644
--- a/src/it/algoritmi/test/Josephus.java
+++ b/src/main/java/org/fscotto/asd/demo/Josephus.java
@@ -1,7 +1,7 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
-import it.algoritmi.adt.CircularQueue;
-import it.algoritmi.adt.queue.LinkedCircularQueue;
+import org.fscotto.asd.adt.queue.LinkedCircularQueue;
+import org.fscotto.asd.adt.CircularQueue;
public class Josephus {
/** Determina il vincitore del problema di Josephus usando una coda circolare. */
diff --git a/src/it/algoritmi/test/PatternMatching.java b/src/main/java/org/fscotto/asd/demo/PatternMatching.java
similarity index 99%
rename from src/it/algoritmi/test/PatternMatching.java
rename to src/main/java/org/fscotto/asd/demo/PatternMatching.java
index cbf2419..9be989b 100644
--- a/src/it/algoritmi/test/PatternMatching.java
+++ b/src/main/java/org/fscotto/asd/demo/PatternMatching.java
@@ -1,4 +1,4 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
import java.util.HashMap;
import java.util.Map;
diff --git a/src/it/algoritmi/test/PredatoryCreditCard.java b/src/main/java/org/fscotto/asd/demo/PredatoryCreditCard.java
similarity index 91%
rename from src/it/algoritmi/test/PredatoryCreditCard.java
rename to src/main/java/org/fscotto/asd/demo/PredatoryCreditCard.java
index 0b3cc69..77ff711 100644
--- a/src/it/algoritmi/test/PredatoryCreditCard.java
+++ b/src/main/java/org/fscotto/asd/demo/PredatoryCreditCard.java
@@ -1,4 +1,4 @@
-package it.algoritmi.test;
+package org.fscotto.asd.demo;
public class PredatoryCreditCard extends CreditCard {
private double rate;