0
import java.util.Scanner;
import java.util.Arrays;
public class rr {
public static void main(String[] args) {
int i =1;
Scanner input = new Scanner(System.in);
System.out.print("Please enter the number of data points: ");
int data = input.nextInt();
double [] userArray = new double[data];
if(data < 0){
System.out.println("The number should be posotive. Exiting.");
}
else {System.out.println("Enter the data:"); }
while (i <= data) {
int userInput = input.nextInt();
i ++;
}
insertionSort(userArray);
}
static void insertionSort(double[] arr) {
int i, j;
double newValue;
for (i = 1; i < arr.length; i++) {
newValue = arr[i];
j = i;
while (j > 0 && arr[j - 1] > newValue) {
arr[j] = arr[j - 1];
j--;
}
arr[j] = newValue;
}
System.out.println(Array.toString(arr));
}
}
Das Programm soll die vom Benutzer eingegebenen Werte übernehmen, sie mit der insertionSort-Methode sortieren und dann ausdrucken. Ich denke, dass die Werte sortiert werden, aber sie werden aus irgendeinem Grund nicht gedruckt.Warum gibt mein Code [D @ 3d4eac69 aus, wenn ich sage, dass er das Array zurückgibt?
Wie kommt es, dass Sie es sortieren können? 'userArray' wird überhaupt nicht aktualisiert. –
Ich denke, das ist ** Arrays.toString (arr); ** –
ja, es hat das Array gedruckt, und es ist nichts drin @DeendayalGarg –