题解 | #牛的品种排序II# java

牛的品种排序II

https://www.nowcoder.com/practice/43e49fbb98b4497ba46e185918188b1c

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param cows int整型一维数组
     * @return int整型一维数组
     */
    public int[] sortCows (int[] cows) {
        // write code here
        int n = cows.length;
        int[] cnt = new int[3];
        for (int x : cows) {
            cnt[x] += 1;
        }
        int index = 0;
        for (int i = 0; i < cnt[0]; i++) {
            cows[index++] = 0;
        }
        for (int i = 0; i < cnt[1]; i++) {
            cows[index++] = 1;
        }
        for (int i = 0; i < cnt[2]; i++) {
            cows[index++] = 2;
        }
        return cows;
    }
}

编程语言是Java。

该题考察的知识点:

  • 数组操作
  • 循环和条件语句

代码的文字解释大纲:

  1. Solution类中创建一个名为sortCows的方法,该方法接收一个整型数组cows作为参数,并返回一个整型数组作为结果。
  2. 声明一个变量n,用于存储数组cows的长度。
  3. 创建一个长度为3的整型数组cnt,用于统计数组cows中0、1、2的个数。
  4. 使用增强型for循环遍历数组cows,并根据元素的值更新cnt数组中对应位置的计数。
  5. 声明一个变量index,初始值为0,用于标记在排序后的数组中当前应该放置元素的位置。
  6. 使用三个普通for循环,分别根据cnt数组中0、1、2的个数,将对应数量的元素放回原数组cows中。
  7. 返回排序后的数组cows作为结果。
全部评论

相关推荐

昨天 22:24
已编辑
西安工业大学 C++
点赞 评论 收藏
分享
03-17 19:21
门头沟学院 Java
面试官_我太想进步了:正常企查查显示的员工一般比设计的少
点赞 评论 收藏
分享
03-26 13:44
南华大学 Java
在看面经的花生米很野蛮:这种情况下你当然要回答,你也是吗!!!!我超喜欢他的XXXXX
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务