Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

หาโหนดในอาร์เรย์ที่ปรากฏมากกว่า 1 ครั้ง ในภาษา C

หาค่าที่ปรากฏในอาร์เรย์มากกว่า 1 ครั้ง (duplicate values)

ตัวอย่าง

arr = {1, 5, 2, 5, 3, 1, 5, 2, 7}

1: 2 ครั้ง, 5: 3 ครั้ง, 2: 2 ครั้ง → Output: 1, 2, 5

โค้ดตัวอย่าง (C++)

#include <iostream>
#include <map>
using namespace std;

void printDuplicates(int arr[], int n) {
    map<int,int> freq;
    for (int i=0;i 1) cout << p.first << " ";
}

int main() {
    int arr[] = {1,5,2,5,3,1,5,2,7};
    int n = sizeof(arr)/sizeof(arr[0]);
    cout << "Duplicates: ";
    printDuplicates(arr, n);
    return 0;
}

ผลลัพธ์

Duplicates: 1 2 5