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 }

     

     

  • 相关阅读:
    Leetcode Binary Tree Preorder Traversal
    Leetcode Minimum Depth of Binary Tree
    Leetcode 148. Sort List
    Leetcode 61. Rotate List
    Leetcode 86. Partition List
    Leetcode 21. Merge Two Sorted Lists
    Leetcode 143. Reorder List
    J2EE项目应用开发过程中的易错点
    JNDI初认识
    奔腾的代码
  • 原文地址:https://www.cnblogs.com/hewenwu/p/3666658.html
Copyright © 2011-2022 走看看