0
点赞
收藏
分享

微信扫一扫

leetcode 442. 数组中重复的数据

Ad大成 2023-02-22 阅读 86


巧妙的不开其他空间

用当前数的数值-1的位置的数的正负来记录出现的次数
nums[ abs(nums[i])-1 ] = -nums[ abs(nums[i])-1 ]

class Solution {
public:
vector<int> findDuplicates(vector<int>& nums) {
vector<int> ret;
for(int i=0;i<nums.size();i++){
nums[ abs(nums[i])-1 ] = -nums[ abs(nums[i])-1 ];
if(nums[ abs(nums[i])-1 ]>0){
ret.push_back( abs(nums[i]) );
}
}
return ret;
}
};

leetcode 442. 数组中重复的数据_i++


举报

相关推荐

0 条评论