C++ Primer에서 연습을하고있었습니다. 사실, 나는 첫 번째 버전을 세련되게했다. 문제는 벡터에서 중복을 감지하는 것뿐만 아니라 중복 된 횟수를 감지하기 위해서입니다. 후자와 문제가 있습니다.벡터에서 중복을 계산하는 법 (C++)
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
vector<int> nums{1,3,1,5,7,8,9,7};
sort(nums.begin(), nums.end());
for(unsigned int i = 0; i != nums.size(); ++i){
if(nums[i] == nums[i + 1]){
cout << nums[i] << " is a duplicated number" << endl;
}
}
return 0;
}
편집 : 또한 내 논리가 결함이 발견
여기 내 코드입니다. 숫자가 두 번 이상 나타나면 여러 번 인쇄됩니다. 중복 된 것입니다.
을이 행에서 같은 중복 여러 번 발견하면, 그건 당신이 중복의 수를 알고있는 방법이다. –