JAVA 插入排序 稳定

来源:互联网 发布:奢侈品软件 编辑:程序博客网 时间:2024/04/30 00:01
package huawei;public final class Demo {/*根据重量排序后,输出帽子颜色 * 举例:5只小白鼠,重量分别为15 30 5 9 30,帽子颜色依次为CL_RED, CL_BLUE, CL_BLUE, CL_YELLOW, CL_GRAY, * 则排序后的输出的帽子颜色序列应该为CL_BLUE, CL_YELLOW, CL_RED, CL_BLUE, CL_GRAY。如果没有小白鼠,输出null。输入参数:小白鼠数组*/public static MOUSE_COLOR[] sortMouse(Mouse[] mouse ){if(mouse==null||mouse.length<=0) return null;MOUSE_COLOR[] result=new MOUSE_COLOR[mouse.length];//插入排序for(int i=1;i<mouse.length;i++){int j;for(j=i-1;j>=0;j--)if(mouse[j].weight<=mouse[i].weight)break;Mouse nowMouse=new Mouse(mouse[i].weight,mouse[i].color);for(int k=i-1;k>j;k--){mouse[k+1].weight=mouse[k].weight;mouse[k+1].color=mouse[k].color;}mouse[j+1]=nowMouse;}for(int i=0;i<mouse.length;i++){result[i]=mouse[i].color;}return result;}}

0 0