কম্পিউটার

C# ব্যবহার করে অক্ষর পুনরাবৃত্তি না করে প্রদত্ত স্ট্রিং থেকে দীর্ঘতম সাবস্ট্রিংয়ের দৈর্ঘ্য কীভাবে খুঁজে পাবেন?


প্রদত্ত স্ট্রিং ইনপুট থেকে, 2টি পয়েন্টার i এবং j দিয়ে স্লাইডিং উইন্ডো কৌশলটি ব্যবহার করুন। i এবং j উভয়ই স্ট্রিং-এ একই অক্ষর নির্দেশ করবে। স্ট্রিং এর মধ্য দিয়ে যান এবং তালিকায় যোগ করুন। যদি বারবার অক্ষর পাওয়া যায় তাহলে তালিকা থেকে সরিয়ে ফেলুন অন্যথায় তালিকায় যুক্ত করুন।

উদাহরণ 1

ইনপুট ৷ − s ="abcabcbb"

আউটপুট − 3

ব্যাখ্যা − উত্তরটি হল "abc", যার দৈর্ঘ্য 3।

উদাহরণ 2

ইনপুট ৷ − s ="bbbbb"

আউটপুট − 1

ব্যাখ্যা − উত্তরটি হল "b", যার দৈর্ঘ্য 1।

সময়ের জটিলতা − O(N)

স্পেস জটিলতা − O(N)

উদাহরণ

public class Arrays{
   public int LongestSubstringWithNoRepeatingCharacters(string s){
      List<char> c = new List<char>();
      int iPointer = 0;
      int jpointer = 0;
      int max = 0;
      while (jpointer < s.Length){
         if (c.Contains(s[jpointer])){
            c.Remove(s[iPointer]);
            iPointer++;
         }
         else{
            max = Math.Max(c.Count(), max);
            c.Add(s[jpointer]);
            jpointer++;
         }
      }
      return max;
   }
}

static void Main(string[] args){
   int res = s.LongestSubstringWithNoRepeatingCharacters("abcabcbb");
   Console.WriteLine(res);
}

আউটপুট

2

  1. জাভাস্ক্রিপ্ট ব্যবহার করে একটি স্ট্রিং-এ দীর্ঘতম স্বরবর্ণ সাবস্ট্রিং-এর দৈর্ঘ্য খুঁজে বের করা

  2. সি ভাষা ব্যবহার করে একটি প্রদত্ত স্ট্রিং থেকে স্বরবর্ণগুলি কীভাবে মুছবেন?

  3. C++ এ প্রদত্ত প্রারম্ভিক অক্ষর থেকে দীর্ঘতম ধারাবাহিক পথের দৈর্ঘ্য খুঁজুন

  4. পাইথনে একটি প্রদত্ত স্ট্রিং-এ k অনন্য অক্ষর সহ দীর্ঘতম সাবস্ট্রিং খুঁজুন