Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 错误void无法转换为java.lang.Integer[]_Algorithm_Sorting - Fatal编程技术网

Algorithm 错误void无法转换为java.lang.Integer[]

Algorithm 错误void无法转换为java.lang.Integer[],algorithm,sorting,Algorithm,Sorting,如何为数组实现InsertionSort?你能告诉我在这种情况下正确的代码是什么吗 import javax.swing.JOptionPane; public class InsertionSort { public static void insertionSort(Integer [] a ){ for(Integer i = 1; i>= a.length ; i++){ Integer toInsert = a[i];

如何为数组实现InsertionSort?你能告诉我在这种情况下正确的代码是什么吗

import javax.swing.JOptionPane;

public class InsertionSort {
    public static void insertionSort(Integer [] a ){
        for(Integer i = 1; i>= a.length ; i++){
            Integer toInsert = a[i];
            Integer j = i;
            while (j>0 && a[j-1]> toInsert){
                a [j] = a [j-1]; // a[j-1] wird eine Stelle nach rechts geschoben
                j--;
            }
            a [j] = toInsert;
        }
    }
    public static void main (String []args){
        Integer a1[] = new Integer[8];
        for(Integer i=0; i< a1.length;i++){
            a1[i] = Integer.parseInt(JOptionPane.showInputDialog("Zahl:"));
        }
        Integer a2[] = insertionSort(a1);
        for(Integer i=0; i<a2.length; i++){
            System.out.println(a2[i]+", ");
        }
    }
}
import javax.swing.JOptionPane;
公共类InsertionSort{
公共静态void insertionSort(整数[]a){
对于(整数i=1;i>=a.length;i++){
整数toInsert=a[i];
整数j=i;
而(j>0&&a[j-1]>toInsert){
a[j]=a[j-1];//a[j-1]是一个很好的例子
j--;
}
a[j]=toInsert;
}
}
公共静态void main(字符串[]args){
整数a1[]=新整数[8];
for(整数i=0;i对于(整数i=0;i,这里是正确的:

public class InsertionSort
{
   public static void insertionSort(Integer[] a)
   {
      for (int i = 1; i < a.length; i++)
      {
         Integer toInsert = a[i];
         int j = i;
         while (j > 0 && a[j - 1] > toInsert)
         {
            a[j] = a[j - 1]; // a[j-1] wird eine Stelle nach rechts geschoben
            j--;
         }
         a[j] = toInsert;
      }
   }

   public static void main(String[] args)
   {
      Integer a1[] = new Integer[8];
      for (int i = 0; i < 8; i++)
      {
         a1[i] = Integer.parseInt(JOptionPane.showInputDialog("Zahl:"));
      }
      insertionSort(a1);
      for (int i = 0; i < a1.length; i++)
      {
         System.out.println(a1[i] + ", ");
      }
   }
}
公共类插入排序
{
公共静态void insertionSort(整数[]a)
{
for(int i=1;i0&&a[j-1]>toInsert)
{
a[j]=a[j-1];//a[j-1]是一个很好的例子
j--;
}
a[j]=toInsert;
}
}
公共静态void main(字符串[]args)
{
整数a1[]=新整数[8];
对于(int i=0;i<8;i++)
{
a1[i]=Integer.parseInt(JOptionPane.showInputDialog(“Zahl:”);
}
插入端口(a1);
对于(int i=0;i
整数a2[]=插入排序(a1);
毫无意义,因为你的
插入排序
不会返回任何内容。它是一个空的。完整的错误输出可能会有行号等有用。谢谢你的快速回答Manoj!你知道为什么未排序的数组是运行该代码打印的吗?我不明白你的问题。你能解释一下吗?