Упражнения на C ++: Найти число, которое встречается нечетное количество раз для данного массива натуральных чисел
C ++ Array: Упражнение 19 с решением
Напишите программу на C ++, чтобы найти число, которое встречается нечетное количество раз для данного массива натуральных чисел. В указанном массиве все числа встречаются четное количество раз.
Пример решения:
Код C ++:
#include <bits/stdc++.h>
using namespace std;
int getOddOccurrence(int nums[], int n)
{
for (int i = 0; i < n; i++) {
int ctr = 0;
for (int j = 0; j < n; j++)
{
if (nums[i] == nums[j])
ctr++;
}
if (ctr % 2 != 0)
return nums[i];
}
return -1;
}
int main()
{
int nums[] = {5, 7, 8, 8, 5, 8, 7, 7};
int n = sizeof(nums)/sizeof(nums[0]);
cout << "Original array: ";
for (int i=0; i < n; i++)
cout << nums[i] <<" ";
cout << "\nNumber which occurs odd number of times: " << getOddOccurrence(nums, n);
return 0;
}
Пример вывода:
Исходный массив: 5 7 8 8 5 8 7 7 Число, которое встречается нечетное количество раз: 7
Блок - схема:
Редактор кода C ++:
Внесите свой код и комментарии через Disqus.
Предыдущий: Напишите программу на C ++ для перемещения всех отрицательных элементов массива целых чисел в конец массива без изменения порядка положительного элемента и отрицательного элемента.
Далее: Напишите программу на C ++ для подсчета количества вхождений данного числа в отсортированный массив целых чисел.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования