题解 | #牛的品种排序II#
牛的品种排序II
https://www.nowcoder.com/practice/43e49fbb98b4497ba46e185918188b1c
知识点
数组,三指针
解题思路
定义三个遍历hei,bai,huang表示三种牛的数量,先遍历一遍数组找到三种牛的数量。
在将0-hei之间的牛设置成0,将hei - hei+bai之间的牛设置成1,将hei+bai - hei+bai+huang之间的牛设置成2。
Java题解
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param cows int整型一维数组 * @return int整型一维数组 */ public int[] sortCows (int[] cows) { // write code here int n = cows.length, hei = 0, bai = 0, huang = 0; for (int cow : cows) { if(cow == 0) hei++; else if(cow == 1) bai++; else huang++; } for (int i = 0; i < hei; i++){ cows[i] = 0; } for (int i = hei; i < bai + hei; i++){ cows[i] = 1; } for (int i = hei + bai; i < n; i++){ cows[i] = 2; } return cows; } }