이 문제에서는 문자열이 주어지고 문자열에서 발생하는 횟수와 함께 중복되는 모든 문자를 찾아야 합니다.
문제를 이해하기 위해 예를 들어 보겠습니다 -
Input: TutorialsPoint Output: t (3) o (2) i (2)
설명 - 각 문자의 발생 빈도는 t → 3입니다. 유 → 1; o → 2; r → 1; 나는 → 2; a → 1; s → 1; n → 1.
이제 이 문제를 해결하기 위해 문자 수를 찾아 문자열에서 배열에 저장합니다. 그런 다음 freq에 문자와 발생을 인쇄하십시오. 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; }
출력
stringcharacter count의 중복 문자
i 2 o 2 t 3