public class SortArray { //Declaring instance variables private String s; //Decl
ID: 3603531 • Letter: P
Question
public class SortArray {
//Declaring instance variables
private String s;
//Declaring static variable
public static int[] sA;
//Zero argumented constructor
public SortArray() {
}
//Parameterized constructor
public SortArray(String str) {
String arr[] = str.split(" ");
int nos[] = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
nos[i] = Integer.parseInt(arr[i]);
}
sA = nos;
this.s = str;
}
//Constructor
public SortArray(int arr[]) {
sA = arr;
}
//Get and Set
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
String arr[] = s.split(" ");
int nos[] = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
nos[i] = Integer.parseInt(arr[i]);
}
sA = nos;
}
//Bubble sort Array
public void bubbleSort() {
int temp;
for (int i = 0; i < sA.length; i++) {
for (int j = i + 1; j < sA.length; j++) {
if (sA[i] > sA[j]) {
temp = sA[i];
sA[i] = sA[j];
sA[j] = temp;
}
}
}
}
//Insertion Sort Array
public void insertionSort() {
for (int m = 1; m < sA.length; m++) {
int val = sA[m];
int n = m - 1;
while ((n > -1) && (sA[n] > val)) {
sA[n + 1] = sA[n];
n--;
}
sA[n + 1] = val;
}
}
//Selection Sort
public void selectionSort() {
int small;
for (int i = 0; i < sA.length; i++) {
int m = i;
for (int j = i + 1; j < sA.length; j++) {
if (sA[j] < sA[m])
m = j;
}
small = sA[m];
sA[m] = sA[i];
sA[i] = small;
}
}
//toString to output Display
@Override
public String toString() {
System.out.println("After Sorting :");
for (int i = 0; i < sA.length; i++) {
System.out.print(sA[i] + " ");
}
return " ";
}
}
------------------------------------------------------------------------------------------
//Test Class
import java.util.Scanner;
public class TestClass {
public static void main(String[] args) {
//Variable Declaration
String str;
//Scanner Class for user input
Scanner sc = new Scanner(System.in);
//Requesting input from user
System.out.println("Enter Sequence of Numbers :");
str = sc.nextLine();
//SortArray Class Object
SortArray sa1 = new SortArray();
//Call setter method
sa1.setS(str);
//Call method
sa1.bubbleSort();
System.out.println(sa1.toString());
System.out.println(" Enter Sequence of Numbers :");
str = sc.nextLine();
//SortArray sort
SortArray sa2 = new SortArray(str);
//Call method
sa2.insertionSort();
System.out.println(sa2.toString());
System.out.print(" How many number you want to enter :");
int size = sc.nextInt();
int nums[] = new int[size];
for (int i = 0; i < size; i++) {
System.out.print("Enter Number#" + (i + 1) + ":");
nums[i] = sc.nextInt();
}
//Pass integer array to create SortArray
SortArray sa3 = new SortArray(nums);
//Call method
sa3.selectionSort();
System.out.println(sa3.toString());
}
}
Explanation / Answer
the code is modified and fixed
public class SortArray {
//Declaring instance variables
private String s;
//Declaring static variable
public static int[] sA;
//Zero argumented constructor
public SortArray() {
}
//Parameterized constructor
public SortArray(String str) {
String arr[] = str.split(" ");
int nos[] = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
nos[i] = Integer.parseInt(arr[i]);
}
sA = nos;
this.s = str;
}
//Constructor
public SortArray(int arr[]) {
sA = arr;
}
//Get and Set
public String getS() {
return s;
}
public void setS(String s) {
this.s = s;
String arr[] = s.split(" ");
int nos[] = new int[arr.length];
for (int i = 0; i < arr.length; i++) {
nos[i] = Integer.parseInt(arr[i]);
}
sA = nos;
}
//Bubble sort Array
public void bubbleSort() {
int temp;
for (int i = 0; i < sA.length; i++) {
for (int j = i + 1; j < sA.length; j++) {
if (sA[i] > sA[j]) {
temp = sA[i];
sA[i] = sA[j];
sA[j] = temp;
}
}
}
}
//Insertion Sort Array
public void insertionSort() {
for (int m = 1; m < sA.length; m++) {
int val = sA[m];
int n = m - 1;
while ((n > -1) && (sA[n] > val)) {
sA[n + 1] = sA[n];
n--;
}
sA[n + 1] = val;
}
}
//Selection Sort
public void selectionSort() {
int small;
for (int i = 0; i < sA.length; i++) {
int m = i;
for (int j = i + 1; j < sA.length; j++) {
if (sA[j] < sA[m])
m = j;
}
small = sA[m];
sA[m] = sA[i];
sA[i] = small;
}
}
//toString to output Display
@Override
public String toString() {
System.out.println("After Sorting :");
for (int i = 0; i < sA.length; i++) {
System.out.print(sA[i] + " ");
}
return " ";
}
}
------------------------------------------------------------------------------------------
//Test Class
import java.util.Scanner;
public class TestClass {
public static void main(String[] args) {
//Variable Declaration
String str;
//Scanner Class for user input
Scanner sc = new Scanner(System.in);
//Requesting input from user
System.out.println("Enter Sequence of Numbers :");
str = sc.nextLine();
//SortArray Class Object
SortArray sa1 = new SortArray();
//Call setter method
sa1.setS(str);
//Call method
sa1.bubbleSort();
System.out.println(sa1.toString());
System.out.println(" Enter Sequence of Numbers :");
str = sc.nextLine();
//SortArray sort
SortArray sa2 = new SortArray(str);
//Call method
sa2.insertionSort();
System.out.println(sa2.toString());
System.out.print(" How many number you want to enter :");
int size = sc.nextInt();
int nums[] = new int[size];
for (int i = 0; i < size; i++) {
System.out.print("Enter Number#" + (i + 1) + ":");
nums[i] = sc.nextInt();
}
//Pass integer array to create SortArray
SortArray sa3 = new SortArray(nums);
//Call method
sa3.selectionSort();
System.out.println(sa3.toString());
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.