Что до y'all,Java быстрой сортировки, чтение из файла ввода пользователя в любой массив (для сортировки)
Я пытаюсь написать код в Java, который будет читать в номера из файла (один # в каждой строке .txt-файла) помещают их в массив, а затем запускают быстрый сортировку по массиву. Eclipse показывает красный цвет, с которым у меня возникают проблемы. Мои ошибки отмечены комментариями, и что такое ошибка, если кто-нибудь может помочь мне запустить это, спасибо всем!
-Kyle
ОК, я обновил с первых двух ответов, спасибо до сих пор, но еще две ошибки Im действительно не понимая.
import java.io.*;
import java.util.Scanner;
import java.io.BufferedReader;
import java.io.File;
public class Lab3 {
public static void main(String[] args) throws IOException{
System.out.print("Name of file with array: ");
Scanner readIn = new Scanner(System.in);
String input=readIn.nextLine();}
**testScan1(input);** //Return Type for method is missing (but I am trying to call the method here)
public static void testScan1(String filename)
{
File file = new File(filename);
Scanner scan;
int [] array = new int[5];
try{
scan = new Scanner(file);
}
catch (java.io.FileNotFoundException e)
{
System.out.println("couldn't open. file not found " );
return;
}
while(scan.hasNext())
{
for(int i = 0; i <= file.length(); ++i)
{
**array[i]=scan.next();** /*Type mismatch, cannot convert from sting to int. (I moved the declaration about try?)*/
}
int partition(int arr[], int left, int right)
{
int i=left; int j = right;
int tmp;
int pivot = arr[(left+right)/2];
while (i<=j){
while(arr[i]<pivot)
i++;
while (arr[j]>pivot)
j--;
if (i<=j){
tmp=arr[i];
arr[i]=arr[j];
arr[j]=tmp;
i++; j--;
}
}
return i;
}
void quickSort(int arr[], int left, int right){
int index = partition(arr, left, right);
if (left<index-1);
quickSort(arr, left, index-1);
if (index<right)
quickSort(arr, index, right);
}
}
Я просто задаю вопрос, потому что это не является общим интересом для кого-либо еще, кроме афер. без обид. удачи в классе. –
+1, потому что вы упрямы – Jack