-5
我明白如何按升序和降序对数组进行排序,但是我尝试创建一个特定模式。例如,我有一个随机顺序的数组。我将如何在模式中排序此数组? “最小,最大,第二小,第二大,第三小,第三大......”等等任何想法?Java:排序数组(第2部分)
public class Test2 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
int[] array = {1,4,2,6,9,3,65,77,33,22};
for(int i = 0; i < array.length; i++){
System.out.print(" " + array[i]);
}
wackySort(array);
}
public static void wackySort(int[] nums){
int sign = 0;
int temp = 0;
int temp2 = 0;
//This sorts the array
for (int i = 0; i < nums.length; i++){
for (int j = 0; j < nums.length -1; j++){
if (nums[j] > nums[j+1]){
temp = nums[j];
nums[j] = nums[j+1];
nums[j+1] = temp;
}
}
}
// This prints out the new array
System.out.println();
for(int i = 0; i < nums.length; i++){
System.out.print(" " + nums[i]);
}
System.out.println();
//This part attempts to fix the array into the order I want it to
int firstPointer = 0;
int secondPointer = nums.length -1;
int[] newarray = new int[nums.length];
for (int i = 0; i < nums.length -1; i+=2){
newarray[i] = nums[firstPointer++];
newarray[i] = nums[secondPointer--];
}
for(int i = 0; i < newarray.length; i++){
System.out.print(" " + newarray[i]);
}
}
}
你不应该在这里发表相同的问题。检查最新帖子的更新回答 – stinepike
http://www.digizol.com/2008/07/java-sorting-comparator-vs-comparable.html –
好的,谢谢。我如何删除这篇文章? – Binka