docs: adding subject and main

This commit is contained in:
amin 2024-06-22 01:50:41 +01:00 committed by zanninso
parent 6f39f297fd
commit caa684eb13
2 changed files with 95 additions and 0 deletions

View File

@ -0,0 +1,17 @@
public class ExerciseRunner {
public static void main(String[] args) {
int[] array = {64, 34, 25, 12, 22, 11, 90};
// Test BubbleSort
Sorter bubbleSorter = new BubbleSort();
bubbleSorter.setArray(array.clone());
bubbleSorter.sort();
System.out.println("BubbleSorted array: " + Arrays.toString(bubbleSorter.getArray()));
// Test InsertionSort
Sorter insertionSorter = new InsertionSort();
insertionSorter.setArray(array.clone());
insertionSorter.sort();
System.out.println("InsertionSorted array: " + Arrays.toString(insertionSorter.getArray()));
}
}

View File

@ -0,0 +1,78 @@
## Flexisort
### Instructions
Create an abstract class `Sorter` that will be used as a base class for sorting algorithms. This class should have an abstract method `sort` that will be implemented by its child classes. Additionally, it should have methods to set and get the array to sort.
Implement two child classes:
- `BubbleSort` which implements the bubble sort algorithm.
- `InsertionSort` which implements the insertion sort algorithm.
### Expected Classes
```java
public abstract class Sorter {
private int[] array;
public int[] getArray() {
// getter method
}
public void setArray(int[] array) {
// setter method
}
public abstract void sort();
}
public class BubbleSort extends Sorter {
@Override
public void sort() {
// bubble sort algorithm implementation
}
}
public class InsertionSort extends Sorter {
@Override
public void sort() {
// insertion sort algorithm implementation
}
}
```
### Usage
Here is a possible ExerciseRunner.java to test your classes:
```java
import java.util.Arrays;
public class ExerciseRunner {
public static void main(String[] args) {
int[] array = {64, 34, 25, 12, 22, 11, 90};
// Test BubbleSort
Sorter bubbleSorter = new BubbleSort();
bubbleSorter.setArray(array.clone());
bubbleSorter.sort();
System.out.println("BubbleSorted array: " + Arrays.toString(bubbleSorter.getArray()));
// Test InsertionSort
Sorter insertionSorter = new InsertionSort();
insertionSorter.setArray(array.clone());
insertionSorter.sort();
System.out.println("InsertionSorted array: " + Arrays.toString(insertionSorter.getArray()));
}
}
```
### Expected Output
```shell
$ javac *.java -d build
$ java -cp build ExerciseRunner
BubbleSorted array: [11, 12, 22, 25, 34, 64, 90]
InsertionSorted array: [11, 12, 22, 25, 34, 64, 90]
$
```