排序方法应返回一个字符串,其中包含数组中以逗号分隔的整数列表,并按升序排序。我的代码不针对 4 或更多的大小进行排序。如果没有 system.out.println(); ,我也没有在控制台中得到任何返回类型的信息。任何建议/帮助表示赞赏。
import java.util.ArrayList;
public class Sorting {
public static void main(String[] args)
{
ArrayList<Integer> alInput = makeArray(5);
ArraySorter(alInput);
}
public static String ArraySorter (ArrayList<Integer> alSort)
{
if (alSort.size()<=1)
{
return String.valueOf(alSort.get(0)) ;
}
int iMin = alSort.get(0);
int iMinIndex = 0;
for (int i = 0;i<alSort.size();i++ )
{
if (alSort.get(i)<iMin)
{
iMin = alSort.get(i);
iMinIndex = i;
}
}
alSort.remove(iMinIndex);
System.out.println(String.valueOf(iMin) + ArraySorter (alSort));
return String.valueOf(iMin) + ArraySorter (alSort);
}
public static ArrayList<Integer> makeArray(int iSize)
{
ArrayList<Integer> alNum = new ArrayList<Integer>();
for (int i = 0; i<iSize;i++)
{
alNum.add((int )(Math.random() * 100 + 1));
}
System.out.println(alNum);
return alNum;
}
}
最佳答案
为什么不试试这个简单的方法,
alInput.sort(null);
String myString = "";
for (int i=0;i<alInput.size();i++){
myString = myString + String.valueOf(alInput.get(i)) + ",";
}
myString= myString.substring(0,myString.length()-1);
System.out.println(myString);
关于java - 使用 ArrayList <Integer> 对整数进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47190714/