这题描述有错误
1、输入的数字可能是打乱的,需要先排序
2、输出返回的字符需要倒叙
解题思路:用两个指针,一个表示数字point,一个是数组的指针i
只有当
nums[i]===point
数组的指针i才增加
给定一个数组,包含从 1 到 N 所有的整数,但其中缺了两个数字。你能在 O(N) 时间内只用 O(1) 的空间找到它们吗?
以任意顺序返回这两个数字均可。
示例 1:
输入: [1]
输出: [2,3]
示例 2:
输入: [2,3]
输出: [1,4]
提示:
nums.length <= 30000
来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/missing-two-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
/** * @param {number[]} nums * @return {number[]} */ var missingTwo = function(nums) { nums.sort((a,b) => a-b) const arr=[]; let i=0; let point=1; const len=nums.length+3; while(point<len){ if(nums[i]===point){ i++ }else{ arr.push(point); } point++ } return arr.reverse(); };