C++ Online Compiler
Example: Sorting-Based Duplicate Finder in C++
C
C++
C#
Java
Python
PHP
main.cpp
STDIN
Run
// Sorting-Based Duplicate Finder #include <iostream> #include <vector> #include <algorithm> // For std::sort int findDuplicateSorting(std::vector<int>& nums) { // Step 1: Sort the array std::sort(nums.begin(), nums.end()); // Step 2: Iterate through the sorted array and check adjacent elements for (size_t i = 0; i < nums.size() - 1; ++i) { // Step 3: If an element is equal to its successor, it's a duplicate if (nums[i] == nums[i+1]) { return nums[i]; } } // Step 4: If no duplicate found return -1; } int main() { std::vector<int> nums = {1, 3, 4, 2, 2}; int duplicate = findDuplicateSorting(nums); if (duplicate != -1) { std::cout << "The duplicate number is: " << duplicate << std::endl; } else { std::cout << "No duplicate found." << std::endl; } std::vector<int> nums2 = {3, 1, 3, 4, 2}; duplicate = findDuplicateSorting(nums2); if (duplicate != -1) { std::cout << "The duplicate number is: " << duplicate << std::endl; } else { std::cout << "No duplicate found." << std.endl; } return 0; }
Output
Clear
ADVERTISEMENTS