Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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
Java 数组排序字母排序_Java_Arrays_Sorting - Fatal编程技术网

Java 数组排序字母排序

Java 数组排序字母排序,java,arrays,sorting,Java,Arrays,Sorting,这是给定的代码: // bubbleSort.java // demonstrates bubble sort // to run this program: C>java BubbleSortApp //////////////////////////////////////////////////////////////// class ArrayBub { private long[] a; // ref to array a priva

这是给定的代码:

// bubbleSort.java
// demonstrates bubble sort
// to run this program: C>java BubbleSortApp
////////////////////////////////////////////////////////////////
class ArrayBub
   {
  private long[] a;                 // ref to array a
  private int nElems;               // number of data items
//--------------------------------------------------------------
   public ArrayBub(int max)          // constructor
      {
      a = new long[max];                 // create the array
      nElems = 0;                        // no items yet
      }
//--------------------------------------------------------------
   public void insert(long value)    // put element into array
     {
    a[nElems] = value;             // insert it
  nElems++;                      // increment size
  }
//--------------------------------------------------------------
   public void display()             // displays array contents
  {
  for(int j=0; j<nElems; j++)       // for each element,
     System.out.print(a[j] + " ");  // display it
  System.out.println("");
  }
//--------------------------------------------------------------
   public void bubbleSort()
    {
    int out, in;

      for(out=nElems-1; out>1; out--)   // outer loop (backward)
     for(in=0; in<out; in++)        // inner loop (forward)
        if( a[in] > a[in+1] )       // out of order?
           swap(in, in+1);          // swap them
      }  // end bubbleSort()
 //--------------------------------------------------------------
   private void swap(int one, int two)
  {
  long temp = a[one];
  a[one] = a[two];
  a[two] = temp;
  }
//--------------------------------------------------------------
   }  // end class ArrayBub
////////////////////////////////////////////////////////////////
 class BubbleSortApp
   {
    public static void main(String[] args)
     {
    int maxSize = 100;            // array size
     ArrayBub arr;                 // reference to array
    arr = new ArrayBub(maxSize);  // create the array

  arr.insert(77);               // insert 10 items
  arr.insert(99);
  arr.insert(44);
  arr.insert(55);
  arr.insert(22);
  arr.insert(88);
  arr.insert(11);
  arr.insert(00);
  arr.insert(66);
  arr.insert(33);

  arr.display();                // display items

  arr.bubbleSort();             // bubble sort them

  arr.display();                // display them again
  }  // end main()
  }  // end class BubbleSortApp
 ////////////////////////////
//bubbleSort.java
//演示冒泡排序
//要运行此程序:C>java BubbleSortApp
////////////////////////////////////////////////////////////////
类ArrayBub
{
private long[]a;//对数组a的引用
private int nElems;//数据项的数量
//--------------------------------------------------------------
公共ArrayBub(int max)//构造函数
{
a=新长[max];//创建数组
nElems=0;//还没有项目
}
//--------------------------------------------------------------
public void insert(长值)//将元素放入数组
{
a[nElems]=value;//插入它
nElems++;//增量大小
}
//--------------------------------------------------------------
public void display()//显示数组内容
{
for(int j=0;j1;out--)//外循环(向后)
for(in=0;in[in+1])//顺序错误?
交换(in,in+1);//交换它们
}//end bubbleSort()
//--------------------------------------------------------------
私有无效交换(整数1,整数2)
{
长期温度=一[一];
a[一]=a[两];
a[两]=温度;
}
//--------------------------------------------------------------
}//结束类ArrayBub
////////////////////////////////////////////////////////////////
类BubbleSortApp
{
公共静态void main(字符串[]args)
{
int maxSize=100;//数组大小
ArrayBub arr;//对数组的引用
arr=newarraybub(maxSize);//创建数组
arr.insert(77);//插入10项
arr.insert(99);
arr.insert(44);
arr.insert(55);
arr.insert(22);
arr.insert(88);
arr.insert(11);
arr.insert(00);
arr.insert(66);
arr.insert(33);
arr.display();//显示项目
arr.bubbleSort();//冒泡排序
arr.display();//再次显示它们
}//结束main()
}//结束类BubbleSortApp
////////////////////////////
我需要改变这个程序,让它插入字符串并按字母顺序显示。这就是我到目前为止所做的:

class ArrayBub
   {
   private String[] a;                 // ref to array a
   private String nElems;               // number of data items
//--------------------------------------------------------------
   public ArrayBub(int max)          // constructor
  {
  a = new String[max];                 // create the array
  nElems = "";                        // no items yet
  }
   //--------------------------------------------------------------
      public void insert(String value)    // put element into array
     {
     a[nElems] = value;             // insert it
    nElems++;                      // increment size
     }
 //--------------------------------------------------------------
   public void display()             // displays array contents
  {
  for(int j=0; j<nElems; j++)       // for each element,
     System.out.print(a[j] + " ");  // display it
  System.out.println("");
  }
//--------------------------------------------------------------
   public void bubbleSort()
  {
  String out;
   String in;

  for(out=nElems-1; out>1; out--)   // outer loop (backward)
     for(in=0; in<out; in++)        // inner loop (forward)
        if( a[in] > a[in+1] )       // out of order?
           swap(in, in+1);          // swap them
  }  // end bubbleSort()
//--------------------------------------------------------------
   private void swap(String one, String two)
  {
  String temp = a[one];
  a[one] = a[two];
  a[two] = temp;
  }
//--------------------------------------------------------------
     }  // end class ArrayBub
   ////////////////////////////////////////////////////////////////
class BubbleSortApp
{
    public static void main(String[] args)
   {
    int maxSize = 100;            // array size
    ArrayBub arr;                 // reference to array
    arr = new ArrayBub(maxSize);  // create the array

    arr.insert("hello");
    arr.insert("this");
    arr.insert("is");
    arr.insert("a");
    arr.insert("random");
    arr.insert("weird ");
    arr.insert("sentence");
    arr.insert("that");
    arr.insert("does");
    arr.insert("not");
    arr.insert("make");
    arr.insert("any");
    arr.insert("sense");

    arr.display();                // display items

    arr.bubbleSort();             // bubble sort them

    arr.display();                // display them again
}  // end main()
}  // end class BubbleSortApp
类ArrayBub
{
私有字符串[]a;//对数组a的引用
私有字符串nElems;//数据项的数量
//--------------------------------------------------------------
公共ArrayBub(int max)//构造函数
{
a=新字符串[max];//创建数组
nElems=“;//还没有项目
}
//--------------------------------------------------------------
public void insert(字符串值)//将元素放入数组
{
a[nElems]=value;//插入它
nElems++;//增量大小
}
//--------------------------------------------------------------
public void display()//显示数组内容
{
for(int j=0;j1;out--)//外循环(向后)
for(in=0;in[in+1])//顺序错误?
交换(in,in+1);//交换它们
}//end bubbleSort()
//--------------------------------------------------------------
私有无效交换(字符串1、字符串2)
{
字符串温度=a[一];
a[一]=a[两];
a[两]=温度;
}
//--------------------------------------------------------------
}//结束类ArrayBub
////////////////////////////////////////////////////////////////
类BubbleSortApp
{
公共静态void main(字符串[]args)
{
int maxSize=100;//数组大小
ArrayBub arr;//对数组的引用
arr=newarraybub(maxSize);//创建数组
arr.insert(“你好”);
arr.插入(“本”);
协议插入(“is”);
协议插入(“a”);
arr.插入(“随机”);
arr.插入(“怪异”);
arr.插入(“句子”);
arr.插入(“该”);
arr.插入(“does”);
协议插入(“非”);
协议插入(“制造”);
协议插入(“任何”);
arr.insert(“sense”);
arr.display();//显示项目
arr.bubbleSort();//冒泡排序
arr.display();//再次显示它们
}//结束main()
}//结束类BubbleSortApp
我有很多错误。我很难将正确的函数从变量更改为字符串。一旦我在代码中达到某个点,我就明白了,但是我不能将它用于其他函数等等

Arrays.sort(a);
这将按字母顺序排列数组“a”

这将按字母顺序排列数组“a”

这将按字母顺序排列数组“a”



这将按字母顺序排列数组“a”

如果您有具体问题,请询问。但是一个通用的“修复我代码中的所有错误”在SoC上是不起作用的,输入大写字母也不会有帮助。@Ascalonian-我同意。Thomas,你把nElems改成了字符串类型,但是你在后面的评论说它应该包含一个数字。这样一个低级的误解让我们很难知道除了为您重写所有代码之外,我们还能在哪里帮助您。尽管如此,感谢您的反馈。。我正在努力成为一个更好的提问者:)事实上,这并不完全是帽子。奥皮特意避免将第一人称单数代词大写。如果你有具体问题,请提问。但是一个通用的“修复我代码中的所有错误”在SoC上是不起作用的,输入大写字母也不会有帮助。@Ascalonian-我同意。Thomas,你把nElems改成了字符串类型,但是你在后面的评论说它应该包含一个数字。这样一个低级的误解让我们很难知道除了为您重写所有代码之外,我们还能在哪里帮助您。尽管如此,感谢您的反馈。。我正在努力成为一个更好的提问者:)事实上,这并不完全是帽子。奥皮不遗余力地避免将冷杉资本化