Im working on a program where the user enters a line of numbers and then can either sort them in order or can display the minimum number.
Both those seem to work, but for some reason I keep getting three -1 values in my array. So the minimum value is always -1 and when I sort it comes back -1-1-1[numbers i enter].
I cant seem to figure out why my code is doing that.
Code:
private int[] buildArray(String line) {
int[]arr = new int[line.length()];
arr[0] = 0;
for (int i = 1; i < line.length(); i++){
arr[i] = Character.digit(line.charAt(i),10);
}
return arr;
}
private int findMin(int numbers[]) {
//PRE numbers.length >= 1
int min = numbers [0];
for (int i = 1; i < numbers.length; i++){
if (numbers [i] < min) {
min = numbers [i];
}
}
return min;
}
private String makeString(int numbers[]) {
//PRE numbers.length >= 1
int i = 0;
String s1 = new String ("");
while (i < numbers.length){
s1 = numbers[i] + s1;
i++;
}
return s1;
}
private void sort(int numbers[]) {
for (int i = 1; i< numbers.length; i++){
int j = i-1;
int temp = numbers[i];
while (j >= 0 && temp > (numbers[j])){
numbers[j+1] = numbers[j];
j--;
}
numbers[j+1] = temp;
}
}
Input: 3,1,2,88
output:
Min Value = -1
Line 1 Sorted = -1-1-101288
Any type of help would be very appreciated, Im very new to this still.