Java:按字母顺序输入的名称的选择排序
我已经有了使用数组进行选择排序的代码:Java:按字母顺序输入的名称的选择排序,java,arrays,sorting,selection-sort,Java,Arrays,Sorting,Selection Sort,我已经有了使用数组进行选择排序的代码: public class SelectionSortTest { public static void main(String[] args) { String[] stringArray = {"Flash", "Green Arrow", "superman", "spiderman", "green lantern"}; System.out.println("Unsorted array:"); for
public class SelectionSortTest
{
public static void main(String[] args)
{
String[] stringArray = {"Flash", "Green Arrow", "superman", "spiderman", "green lantern"};
System.out.println("Unsorted array:");
for(String element: stringArray)
System.out.print(element + " ");
System.out.println();
selectionSort(stringArray);
System.out.println("Sorted array:");
for(String element: stringArray)
System.out.print(element + " ");
System.out.println();
}
static void selectionSort(Comparable[] array)
{
int smallindex;
for(int i = 0; i < array.length; i++)
{
smallindex = i; // set first element as smallest
for(int j = i + 1; j < array.length; j++) // find smallest
if(array[j].compareTo(array[smallindex]) < 0)
smallindex = j;
if(smallindex != i)
swap(array, smallindex, i);
}
}
static void swap(Object[] array, int index1, int index2)
{
Object temp = array[index1];
array[index1] = array[index2];
array[index2] = temp;
}
}
与:
扫描仪输入=新扫描仪(System.in);
对于(int i=0;
但它不起作用。有什么建议吗?您可以添加以下代码以输入逗号分隔的字符串作为用户输入
Scanner input = new Scanner(System.in);
String inputArray = input.next();
String[] stringArray = inputArray.split(",");
现在您可以使用stringArray
并执行其余代码。希望这对您有所帮助
干杯!您必须首先初始化阵列
Scanner sc = new Scanner(System.in);
System.err.println("enter size of ur table");
int size = sc.nextInt();
String array[] = new String[size];
for (int i = 0; i < size; i++) {
array[i] = sc.nextLine();
System.err.println("element " + i + "is :" + array[i]);
}
Scanner sc=新扫描仪(System.in);
System.err.println(“输入您表格的大小”);
int size=sc.nextInt();
字符串数组[]=新字符串[大小];
对于(int i=0;i
别介意,伙计们,我知道怎么做了:
import java.util.Scanner;
public class selectionsort
{
public static void main (String args[])
{
Scanner in = new Scanner (System.in);
System.out.print ("Enter the number of names you wish to enter: ");
int n = in.nextInt();
String array[] = new String [n]; //Array to store the names in.
in.nextLine(); // < --- an extra next Line
for (int i = 0; i < array.length; i++)
{
System.out.println("Please enter the name: ");
array[i]= in.nextLine();
}
System.out.println("Unsorted array:");
for(String element: array)
System.out.print(element + " ");
System.out.println();
selectionSort(array);
System.out.println("SelectionSorted array:");
for(String element: array)
System.out.print(element + " ");
System.out.println();
}
static void selectionSort(Comparable[] array)
{
int smallindex;
for(int i = 0; i < array.length; i++)
{
smallindex = i; // set first element as smallest
for(int j = i + 1; j < array.length; j++) // find smallest
if(array[j].compareTo(array[smallindex]) < 0)
smallindex = j;
if(smallindex != i)
swap(array, smallindex, i);
}
}
static void swap(Object[] array, int index1, int index2)
{
Object temp = array[index1];
array[index1] = array[index2];
array[index2] = temp;
}
}
import java.util.Scanner;
公共类选择排序
{
公共静态void main(字符串参数[])
{
扫描仪输入=新扫描仪(系统输入);
System.out.print(“输入要输入的名称数:”);
int n=in.nextInt();
字符串数组[]=新字符串[n];//用于存储名称的数组。
in.nextLine();//<---额外的下一行
for(int i=0;i
最好保留一个排序的数组,每次用户输入名称时,将其作为数组中的正确点插入。由于用户将是目前为止最大的瓶颈,他们甚至不会注意到这一点…@Boris the Spider没事,我刚刚明白了,请看下面我的回答谢谢。我刚刚明白了你发帖了。上面回答谢谢。我刚在你发帖前弄明白。上面回答:D:D:D:D:D
Scanner sc = new Scanner(System.in);
System.err.println("enter size of ur table");
int size = sc.nextInt();
String array[] = new String[size];
for (int i = 0; i < size; i++) {
array[i] = sc.nextLine();
System.err.println("element " + i + "is :" + array[i]);
}
import java.util.Scanner;
public class selectionsort
{
public static void main (String args[])
{
Scanner in = new Scanner (System.in);
System.out.print ("Enter the number of names you wish to enter: ");
int n = in.nextInt();
String array[] = new String [n]; //Array to store the names in.
in.nextLine(); // < --- an extra next Line
for (int i = 0; i < array.length; i++)
{
System.out.println("Please enter the name: ");
array[i]= in.nextLine();
}
System.out.println("Unsorted array:");
for(String element: array)
System.out.print(element + " ");
System.out.println();
selectionSort(array);
System.out.println("SelectionSorted array:");
for(String element: array)
System.out.print(element + " ");
System.out.println();
}
static void selectionSort(Comparable[] array)
{
int smallindex;
for(int i = 0; i < array.length; i++)
{
smallindex = i; // set first element as smallest
for(int j = i + 1; j < array.length; j++) // find smallest
if(array[j].compareTo(array[smallindex]) < 0)
smallindex = j;
if(smallindex != i)
swap(array, smallindex, i);
}
}
static void swap(Object[] array, int index1, int index2)
{
Object temp = array[index1];
array[index1] = array[index2];
array[index2] = temp;
}
}