Missingnumbers题目描述:给定一个包含n个数在[0,n]的数组nums,找出数组中没有出现在[0,n]范围内的数。进阶:你能不能实现一个线性时间复杂度的算法,只用额外的常量空间来解决这个问题?例子见LeetCode官网。来源:LeetCode链接:https://leetcode-cn.com/probl...版权归LeetCode所有。商业转载请联系官方授权,非商业转载请注明出处。解法一:数组遍历首先,得到的数的长度为n,根据公式n*(n+1)/2得到0到n的数之和。由于nums数组只少了一个数,所以遍历数组,将数组中的所有元素相加减去,剩下的数就是要返回的数。publicclassLeetCode_268{publicstaticintmissingNumber(int[]nums){intn=nums.长度;整数和=n*(n+1)/2;for(intnum:nums){sum-=num;}返回总和;}publicstaticvoidmain(String[]args){int[]nums=newint[]{9,6,4,2,3,5,7,0,1};System.out.println(missingNumber(nums));}}【每日留言】最清晰的脚印,总是在最泥泞的路上。
