mirror of
https://github.com/labuladong/fucking-algorithm.git
synced 2025-07-13 01:11:29 +08:00
@ -140,3 +140,29 @@ vector<int> findErrorNums(vector<int>& nums) {
|
|||||||
</p>
|
</p>
|
||||||
|
|
||||||
======其他语言代码======
|
======其他语言代码======
|
||||||
|
|
||||||
|
[zhuli](https://github.com/1097452462 "zhuli")提供的Java代码:
|
||||||
|
```java
|
||||||
|
class Solution {
|
||||||
|
public int[] findErrorNums(int[] nums) {
|
||||||
|
int n = nums.length;
|
||||||
|
int dup = -1;
|
||||||
|
for (int i = 0; i < n; i++) {
|
||||||
|
// 元素是从 1 开始的
|
||||||
|
int index = Math.abs(nums[i]) - 1;
|
||||||
|
// nums[index] 小于 0 则说明重复访问
|
||||||
|
if (nums[index] < 0)
|
||||||
|
dup = Math.abs(nums[i]);
|
||||||
|
else
|
||||||
|
nums[index] *= -1;
|
||||||
|
}
|
||||||
|
int missing = -1;
|
||||||
|
for (int i = 0; i < n; i++)
|
||||||
|
// nums[i] 大于 0 则说明没有访问
|
||||||
|
if (nums[i] > 0)
|
||||||
|
// 将索引转换成元素
|
||||||
|
missing = i + 1;
|
||||||
|
return new int[]{dup, missing};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
Reference in New Issue
Block a user