描述:有一组数(43,14,6,9,3,27,38,19,5等)
排序:将最大的放在第一位,最小放在第二位,剩下的最大的放在第三位,最小的放在第四位,以此类推
输出排序结果
作为一个新手,首先看到题目感觉有点难,他不像一般的大小排序可以调用工具类直接排序。
仔细想想其实也不是那么的复杂:
1.难点1:本身是个无序的组合,如果是个排序好的数组,或许就没有那么难了
2.排完序后,只要按照最后一个放第一位,原来的第一位放在后面,下面的以此类推。
int[] a = new int[]{43,14,6,9,3,27,38,19,5};
Arrays.sort(a);
for (int i = 0,j=a.length-1; i <= j;)
{
System.out.println(a[j--]);
if(j==i)
{
System.out.println(a[i]);
}
if(j>i)
{
System.out.println(a[i++]);
}
}
按照上的思路很快就能实现功能了。
由此,复习一下最近用到的排序,最近的一个有个优先级排序的功能,具体的掠过:
功能描述大概是这样的:按照规则对对象进行优先级排序,相同的优先级需要随机返回。
下面的列子中People中的leavl是对象的优先级的体现。
public class People
{
public People(String name,String leavl,String id)
{
this.id = id;
this.name = name;
this.leavl = leavl;
}
private String name;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getLeavl()
{
return leavl;
}
public void setLeavl(String leavl)
{
this.leavl = leavl;
}
public String getId()
{