इस समस्या में, हमें एक स्ट्रिंग दी गई है और हमें उन सभी वर्णों को ढूंढना है जो डुप्लिकेट हैं साथ ही स्ट्रिंग में उनकी घटनाओं की संख्या।
समस्या को समझने के लिए एक उदाहरण लेते हैं -
इनपुट: TutorialsPoint आउटपुट: t (3) o (2) i (2)
व्याख्या- प्रत्येक वर्ण की घटना की आवृत्तियां हैं t → 3; u → 1; o → 2; r → 1; i → 2; a → 1; s → 1; n → 1।
अब, इस समस्या को हल करने के लिए हम वर्ण गणना ढूंढेंगे और इसे स्ट्रिंग से एक सरणी में संग्रहीत करेंगे। और फिर उन वर्णों और घटनाओं को प्रिंट करेंगे जहां आवृत्ति 1 से अधिक है।
उदाहरण
# include <iostream> using namespace std; # define NO_OF_CHARS 256 class duplicate_char{ public : void charCounter(char *str, int *count){ int i; for (i = 0; *(str + i); i++) count[*(str + i)]++; } void printDuplicateCharacters(char *str){ int *count = (int *)calloc(NO_OF_CHARS, sizeof(int)); charCounter(str, count); int i; for (i = 0; i < NO_OF_CHARS; i++) if(count[i] > 1) printf("%c\t\t %d \n", i, count[i]); free(count); } }; int main(){ duplicate_char dupchar ; char str[] = "tutorialspoint"; cout<<"The duplicate characters in the string\n"; cout<<"character\tcount\n"; dupchar.printDuplicateCharacters(str); return 0; } आउटपुट
स्ट्रिंग में डुप्लिकेट वर्ण वर्ण गणना
i 2 o 2 t 3