Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में होने के क्रम में वर्ण और उनकी आवृत्तियों को प्रिंट करें


यह समस्या, हमें लोअरकेस वर्णों की एक स्ट्रिंग दी गई है। और हमें स्ट्रिंग में आने वाले प्रत्येक वर्ण की आवृत्तियों को खोजना होगा। समस्या के बारे में अधिक बताते समय नीचे दिया गया उदाहरण।

Input : “jskdk”
Output :
j 1
s 1
k 2
d 1

स्पष्टीकरण - स्ट्रिंग में, वर्ण j, s, d एक बार और k दो बार आते हैं। इसलिए, मुद्रित आउटपुट उपरोक्त परिणाम देता है।

आइए अब इस समस्या को हल करने के लिए एक तर्क बनाते हैं। जैसा कि कहा गया है कि हमें स्ट्रिंग में प्रत्येक वर्ण के घटित होने की आवृत्ति का पता लगाना है। एक तार्किक तरीका यह है कि स्ट्रिंग को पार किया जाए और किसी वर्ण के घटित होने की आवृत्ति की गणना की जाए और उसे एक सरणी में संग्रहीत किया जाए और फिर वर्ण को उनके घटित होने की आवृत्ति के साथ प्रिंट किया जाए।

एल्गोरिदम

Step 1 : Create an array of size 26 that stores the frequency of characters in the string.
Step 2 : print all the characters along with their frequency of occurrence from the array.

उदाहरण

आइए अब इस समस्या का समाधान खोजने के लिए एक प्रोग्राम बनाएं,

#include <bits/stdc++.h>
using namespace std;
int main(){
   string str = "tutorialspoint";
   int n = str.size();
   int frequency[26];
   memset(frequency, 0, sizeof(frequency));
   for (int i = 0; i < n; i++)
      frequency[str[i] - 'a']++;
   for (int i = 0; i < n; i++) {
      if (frequency[str[i] - 'a'] != 0) {
         cout<<str[i]<<"\t"<<frequency[str[i] - 'a']<<"\n";
         frequency[str[i] - 'a'] = 0;
      }
   }
   return 0;
}

आउटपुट

t 3
u 1
o 2
r 1
i 2
a 1
l 1
s 1
p 1
n 1

  1. सी ++ में गेटलाइन (स्ट्रिंग)

    इसका उपयोग स्ट्रीम से वर्णों को बिना स्वरूपित इनपुट के रूप में निकालने के लिए किया जाता है और उन्हें सी-स्ट्रिंग के रूप में s में संग्रहीत करता है, जब तक कि निकाला गया वर्ण परिसीमन वर्ण नहीं होता है, या n वर्ण s (समाप्त अशक्त वर्ण सहित) को लिखे जाते हैं। घोषणा इस प्रकार है: basic_istream& getlin

  1. स्ट्रिंग को अवरोही क्रम में क्रमबद्ध करना C++

    आरोही या अवरोही क्रम में छँटाई, हालाँकि, स्ट्रिंग सॉर्ट विधि और अन्य साधनों का उपयोग करके भी C++ प्रोग्रामिंग में विधिवत रूप से की जा सकती है। लेकिन यहां, स्ट्रिंग की तुलना (दूसरे के साथ पहले शब्द) और शब्दों को अवरोही क्रम में रखने के लिए आंतरिक और बाहरी ट्रैवर्सिंग लूप में शामिल विधि (एक अस्थायी चर

  1. सी ++ प्रोग्राम यह जांचने के लिए कि स्ट्रिंग के पहले और आखिरी अक्षर बराबर हैं या नहीं

    स्ट्रिंग के इनपुट के साथ दिया गया और कार्य यह जांचना है कि दिए गए स्ट्रिंग के पहले और अंतिम वर्ण बराबर हैं या नहीं। उदाहरण Input-: study Output-: not equal    As the starting character is ‘s’ and the end character of a string is ‘y’ Input-: nitin Output-: yes it hav