स्ट्रिंग में डुप्लीकेट कैरेक्टर्स खोजने के लिए हम प्रत्येक कैरेक्टर की फ्रीक्वेंसी गिनते हैं और फिर जिनकी गिनती 1 से अधिक होती है, उन्हें प्रिंट करते हैं।
उदाहरण
using System;
class Demo {
static int maxCHARS = 256;
static void calculate(String s, int[] cal) {
for (int i = 0; i < s.Length; i++)
cal[s[i]]++;
}
public static void Main() {
String s = "Welcometomywebsite!";
int[] cal = new int[maxCHARS];
calculate(s, cal);
for (int i = 0; i < maxCHARS; i++)
if(cal[i] > 1) {
Console.WriteLine("कैरेक्टर: " + (char)i);
Console.WriteLine("घटनाएं: " + cal[i] + " बार");
}
}
}
आउटपुट
कैरेक्टर: e
घटनाएं: 4 बार
कैरेक्टर: m
घटनाएं: 2 बार
कैरेक्टर: o
घटनाएं: 2 बार
कैरेक्टर: t
घटनाएं: 2 बार
कैरेक्टर: w
घटनाएं: 2 बार
कार्यप्रणाली:
- ASCII कैरेक्टर्स के लिए 256 आकार का इंट ऐरे बनाएं
- स्ट्रिंग के प्रत्येक कैरेक्टर के लिए संबंधित इंडेक्स बढ़ाएं
- ऐरे को स्कैन करके काउंट > 1 वाले कैरेक्टर्स प्रिंट करें
नोट: यह केस-सेंसिटिव है। केस-इनसेंसिटिव तुलना के लिए स्ट्रिंग को लोअरकेस/अपरकेस में कन्वर्ट करें।