কম্পিউটার

C-তে একটি স্ট্রিং-এ যেকোনো দুটি একই অক্ষরের মধ্যে সর্বাধিক সংখ্যক অক্ষর


আমাদের বর্ণমালার একটি স্ট্রিং দেওয়া হয়। অ্যারেতে একই অক্ষরের অন্তত দুটি ঘটনা থাকতে পারে। এখানে কাজটি হল একটি অক্ষরের যেকোনো দুটি ঘটনার মধ্যে সর্বাধিক সংখ্যক অক্ষর খুঁজে বের করা। যদি কোনো অক্ষরের পুনরাবৃত্তি না থাকে তাহলে -1 রিটার্ন করুন।

ইনপুট − স্ট্রিং str =“abcdba”

আউটপুট −একটি স্ট্রিং-এ যেকোনো দুটি একই অক্ষরের মধ্যে অক্ষরের সর্বোচ্চ সংখ্যা −4

ব্যাখ্যা − পুনরাবৃত্তি করা অক্ষরগুলি হল 'a' এবং 'b' শুধুমাত্র সূচী সহ −

<পূর্ব>1. 2'a' প্রথম সূচক 0 শেষ 5, 5-0-1=42 এর মধ্যে অক্ষর। 'b' প্রথম সূচী 1 শেষ 4, 4-1-1 এর মধ্যে অক্ষর=2 পুনরাবৃত্তি করা বর্ণমালার মধ্যে সর্বাধিক অক্ষর :4

ইনপুট − string str =“AbcAaBcbC”

আউটপুট −একটি স্ট্রিং-এ যেকোনো দুটি একই অক্ষরের মধ্যে অক্ষরের সর্বোচ্চ সংখ্যা −5

ব্যাখ্যা − পুনরাবৃত্তি করা অক্ষরগুলি হল 'A', 'b', 'c' শুধুমাত্র সূচী সহ −

<পূর্ব>1. 'A' প্রথম সূচক 0 শেষ 3, 3-0-1=22 এর মধ্যে অক্ষর। 'b' প্রথম সূচক 1 শেষ 7, 7-1-1=53 এর মধ্যে অক্ষর। 'c' প্রথম সূচী 2 শেষ 6 , অক্ষর 6-2-1=3 পুনরাবৃত্তি বর্ণমালার মধ্যে সর্বাধিক অক্ষর :5

দ্রষ্টব্য − যদি ইনপুট স্ট্রিং "abcdefg" হয়, সেখানে কোনো পুনরাবৃত্তি করা অক্ষর নেই তাই ফাংশনটি -1 ফিরে আসবে।

নিচের প্রোগ্রামে ব্যবহৃত পদ্ধতিটি নিম্নরূপ

  • আমরা Str[>

    হিসেবে অক্ষরের একটি স্ট্রিং সহ একটি ক্যারেক্টার অ্যারে নিই
  • ফাংশন maxChars( char str[],int n) ব্যবহার করা হয় যেকোন দুটি পুনরাবৃত্তি করা বর্ণমালার মধ্যে সর্বাধিক সংখ্যক অক্ষর গণনা করতে।

  • আমরা পরিবর্তনশীল maxC-কে -1 দিয়ে শুরু করি।

  • লুপের ভিতরে শুরু থেকে স্ট্রিং এর অ্যারে ট্র্যাভার্স করুন।

  • লুপের জন্য নেস্টেড বাকি অক্ষর ট্র্যাভার্স করুন এবং পুনরাবৃত্তির জন্য অনুসন্ধান করুন যদি থাকে। ( যদি ( str[i] ==str[j])।

  • যদি এটি সত্য হয় তবে সূচীগুলি বিয়োগ করে অক্ষরের মধ্যে পার্থক্য গণনা করুন। ( temp=j-i-1)

  • যদি এই মানটি এখন পর্যন্ত সর্বাধিক পাওয়া যায়, তাহলে এটিকে maxC এ সংরক্ষণ করুন।

  • পুরো স্ট্রিংটি অতিক্রম করার পরে maxC ফেরত দিন।

উদাহরণ

#include #include #include int maxChars(char str[],int n){ int size =n; int maxC =-1; (int i =0; i temp?maxC:temp; } return maxC;}// ড্রাইভার কোডইন্ট মেইন(){ char Str[] ="AbcAaBcbC"; printf("একটি স্ট্রিং-এ যেকোনো দুটি একই অক্ষরের মধ্যে সর্বাধিক সংখ্যা অক্ষর :%d", maxChars(Str,9)); রিটার্ন 0;

আউটপুট

যদি আমরা উপরের কোডটি চালাই তবে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
একটি স্ট্রিং-এ যেকোনো দুটি একই অক্ষরের মধ্যে অক্ষরের সর্বোচ্চ সংখ্যা :5

  1. C++-এ BST-এর দুটি নোডের মধ্যে সর্বাধিক উপাদান

  2. দুই পূর্ণসংখ্যার মধ্যে আর্মস্ট্রং সংখ্যা?

  3. C++ স্ট্রিং ধ্রুবক এবং অক্ষর ধ্রুবকের মধ্যে পার্থক্য

  4. C# প্রোগ্রাম একটি স্ট্রিং-এ একটি অক্ষরের উপস্থিতির সংখ্যা খুঁজে বের করতে