题解 | #没有出现的编号#
没有出现的编号
https://www.nowcoder.com/practice/875d705df65c401a905f574070e09320
import java.util.*; public class Solution { public int[] findMissingAndMaxNegative (int[] nums) { int minZ = 0, maxF = 0;//最小的正整数,最大的负数 boolean flag = false;//标志位,标志是否为第一个负数,给maxF进行赋值 for (int num : nums) { if (num >= 0) { if (num == minZ + 1) { minZ = num; } } else { if (!flag) { maxF = num; flag = true; } if (num > maxF) { maxF = num; } } } minZ = minZ + 1;//最后要给最小的正整数+1,因为我们求出的是数组中已知的最小正整数 return new int[] {minZ, maxF}; } }