Java 我已经实现了选择排序作为选项1,但是我还想实现冒泡排序作为对txt文件排序的第二个选项
我想实现冒泡排序作为对TXT文件排序的第二个选项。任何解决方案都将受到高度赞赏。以下是我迄今为止所做的工作。我已经能够正确地初始化选择排序,但无法初始化冒泡排序以使其工作相同Java 我已经实现了选择排序作为选项1,但是我还想实现冒泡排序作为对txt文件排序的第二个选项,java,sorting,Java,Sorting,我想实现冒泡排序作为对TXT文件排序的第二个选项。任何解决方案都将受到高度赞赏。以下是我迄今为止所做的工作。我已经能够正确地初始化选择排序,但无法初始化冒泡排序以使其工作相同 import java.util.Scanner; import java.io.*; public class ArraySort1 { public static void main(String[] args) throws IOException { Scanner inputFile; i
import java.util.Scanner;
import java.io.*;
public class ArraySort1 {
public static void main(String[] args) throws IOException {
Scanner inputFile;
inputFile = new Scanner(new File("arrayex1.txt"));
PrintWriter outputFile;
outputFile = new PrintWriter(new FileWriter("sorted.txt"));
/* Declare the array */
int[] numbers = new int[50];
int index = 0;
int temp, smallest, smallest_index;
/* Read the first number */
numbers[index] = inputFile.nextInt();
while(inputFile.hasNextInt()) {
numbers[index] = inputFile.nextInt();
index++;
}
// Local variable
int swValue;
// Display menu graphics
System.out.println("============================");
System.out.println("| MENU SELECTION DEMO |");
System.out.println("============================");
System.out.println("| Options: |");
System.out.println("| 1. Selection Sort |");
System.out.println("| 2. Bubble Sort |");
System.out.println("| 3. Exit |");
System.out.println("============================");
swValue = Keyin.inInt(" Select option: ");
// Switch construct
switch (swValue) {
case 1:
System.out.println(" Selection Sort Starting....");
for (int i = 0; i < index - 1; i++) {
smallest = numbers[i];
smallest_index = i;
for (int j = i + 1; j < index; j++) {
if (numbers[j] < smallest) {
smallest = numbers[j];
smallest_index = j;
}
}
/* If needed switch numbers[i] and numbers[smallest_index] */
if (numbers[i] != numbers[smallest_index]) {
temp = numbers[i];
numbers[i] = numbers[smallest_index];
numbers[smallest_index] = temp;
}
}
for (int i = 0; i < index; i++) {
System.out.print (numbers[i] + " ");
outputFile.print (numbers[i] + " ");
}
inputFile.close();
outputFile.close();
break;
case 2:
int i = 0, t=0;
boolean swapped = true;
while(swapped){
swapped = false;
for(int i1 = 0; i1 < index - 1; i1++){
smallest = numbers[i1];
smallest_index = i1;
if(numbers[i1] > numbers[i1 + 1]){
swapped = true;
int tmp = numbers[i1];
numbers[i1] = numbers[i1 + 1];
numbers[i1 + 1] = tmp;
}
}
for(int i1 = 0; i < numbers.length; i++){
System.out.print(numbers[i] + "\t");
}
System.out.println();
}
//2 System.out.println("Bubble Sort Sorting 2 selected");
break;
case 3:
System.out.println("Exit selected");
break;
default:
System.out.println("Invalid selection");
break; // This break is not really necessary
}
}
}
import java.util.Scanner;
导入java.io.*;
公共类ArraySort1{
公共静态void main(字符串[]args)引发IOException{
扫描仪输入文件;
inputFile=新扫描仪(新文件(“arrayex1.txt”);
PrintWriter输出文件;
outputFile=新的PrintWriter(新的FileWriter(“sorted.txt”);
/*声明数组*/
整数[]个数=新整数[50];
int指数=0;
int temp,最小值,最小指数;
/*读第一个数字*/
数字[索引]=inputFile.nextInt();
while(inputFile.hasNextInt()){
数字[索引]=inputFile.nextInt();
索引++;
}
//局部变量
int-swValue;
//显示菜单图形
System.out.println(“==============================================”);
System.out.println(“|菜单选择演示|”);
System.out.println(“==============================================”);
System.out.println(“|选项:|”);
System.out.println(“| 1.选择排序|”);
System.out.println(“| 2.气泡排序|”);
System.out.println(“| 3.Exit |”);
System.out.println(“==============================================”);
swValue=Keyin.ini(“选择选项:”);
//开关结构
开关(SWV值){
案例1:
System.out.println(“选择排序开始…”);
对于(int i=0;i数字[i1+1]){
交换=真;
int tmp=数字[i1];
数字[i1]=数字[i1+1];
数字[i1+1]=tmp;
}
}
for(int i1=0;i
你还没有写下泡泡糖运动的任何代码?我只是把代码写进去了……。@Kevin Esche。。。我非常期待您的建议。您是否在询问如何实施bubblesort?如果是这样的话,去你当地的图书馆找一份第3卷。不,我只是想知道,因为他说他试图实现代码,但没有写下来。这个bubblesort确实有效,可以优化,但只需几次尝试就可以了