zoukankan      html  css  js  c++  java
  • 称重小白鼠

    称重小白鼠   

    题目标题:

    • N只小白鼠,每只鼠头上戴着一顶有颜色的帽子。现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色由枚举值MOUSE_COLOR定义。不同的小白鼠可以戴相同颜色的帽子。白鼠的重量用整数表示

    • 请按照小白鼠的重量从小到大的顺序输出他们帽子的颜色,重量相同的小白鼠,排序后位置不变

     

    详细描述:

    • 接口说明

    /*根据重量排序后,输出帽子颜色   * 举例: 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 )  {   return null;  }

    举例:

    5只小白鼠,重量分别为15 30 5 9 30,帽子颜色依次为CL_REDCL_BLUE, CL_BLUE, CL_YELLOW, CL_GRAY,则排序后的输出的帽子颜色序列应该为CL_BLUE, CL_YELLOW, CL_RED, CL_BLUE, CL_GRAY

     

     1 package huawei;
     2 
     3 public final class Demo {
     4 
     5     /*根据重量排序后,输出帽子颜色
     6      * 举例:    5只小白鼠,重量分别为15 30 5 9 30,帽子颜色依次为CL_RED, CL_BLUE, CL_BLUE, CL_YELLOW, CL_GRAY,
     7      * 则排序后的输出的帽子颜色序列应该为CL_BLUE, CL_YELLOW, CL_RED, CL_BLUE, CL_GRAY。
     8         如果没有小白鼠,输出null。
     9     输入参数:小白鼠数组    
    10         
    11     */
    12     public static MOUSE_COLOR[] sortMouse(Mouse[] mouse )
    13     {
    14         Mouse[] mouse1 = mouse;
    15     
    16         if(mouse==null||mouse.length==0)return null; //这个地方必须判断,而且要先判断是否为null,在判断是否为0,否则会有异常
    17         
    18         //直接插入算法
    19         for(int i=1;i<mouse1.length;i++) //从第2个元素开始遍历,遍历n-1遍
    20         {
    21             
    22             int j=i;
    23             
    24             Mouse temp = mouse1[i];
    25             
    26             while((j>0)&&(temp.weight<mouse1[j-1].weight)) {
    27                 
    28                 mouse1[j] = mouse1[j-1];
    29                 j--;            
    30             }        
    31             mouse1[j] = temp;
    32         }    
    33         MOUSE_COLOR [] colors = new MOUSE_COLOR[mouse1.length];
    34         
    35         for(int i=0;i<colors.length;i++) {
    36             
    37             colors[i] = mouse1[i].color;        
    38         }    
    39         return colors;        
    40     }    
    41 }

     

     1 package huawei;
     2 
     3 public class Mouse {
     4     public int weight;
     5     public MOUSE_COLOR color;    
     6     public Mouse()
     7     {
     8         
     9     }
    10     public Mouse(int weight,MOUSE_COLOR color)
    11     {
    12         this.weight =weight;
    13         this.color = color;
    14     }
    15 }

     

     

     1 package huawei;
     2 
     3 public enum MOUSE_COLOR {
     4     CL_RED,
     5     CL_BLUE,
     6     CL_BLACK,
     7     CL_WHITE,
     8     CL_YELLOW,
     9     CL_PINK,
    10     CL_GRAY
    11 }

     

     

  • 相关阅读:
    查看单据项目文本对应的参数信息
    下载EPM包详细运行日志
    ABAP 字符串换行符处理
    PyCharm编辑HTML文件时输入{%不能自动补全
    Ubuntu 18.04安装MongoDB 4.0
    ubuntu18.04(bionic) 配置阿里数据源
    【Python】迭代器
    【python】多任务(2. 进程)
    【python】多任务(1. 线程)
    【python】文件下载---基础版
  • 原文地址:https://www.cnblogs.com/hewenwu/p/3666658.html
Copyright © 2011-2022 走看看