কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে সর্বোচ্চ দুটি স্বতন্ত্র ক্যারেক্টার ধারণকারী দীর্ঘতম স্ট্রিং বের করা


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি স্ট্রিং প্রথম আর্গুমেন্ট এবং একটি সংখ্যা (স্ট্রিং দৈর্ঘ্যের চেয়ে ছোট) দ্বিতীয় আর্গুমেন্ট হিসেবে গ্রহণ করবে। ফাংশনটি মূল স্ট্রিং থেকে ক্যারেক্টার ডিলিট করে একটি নতুন স্ট্রিং তৈরি করবে যেটি সর্বোচ্চ দুটি স্বতন্ত্র ক্যারেক্টার ধারণ করবে এবং দৈর্ঘ্য সর্বোচ্চ হবে। শেষে ফাংশনটি সেই স্ট্রিংয়ের দৈর্ঘ্য রিটার্ন করবে।

উদাহরণস্বরূপ: ইনপুট স্ট্রিং যদি হয় —

const str = 'kjeljsdl';

তাহলে আউটপুট হবে —

const output = 4;

কারণ সর্বোচ্চ ২টি স্বতন্ত্র ক্যারেক্টার ধারণকারী দীর্ঘতম সাবস্ট্রিং হলো 'jljl'।

উদাহরণ

কোডটি নিচে দেওয়া হলো —

const str = 'kjeljsdl'; 
const longestSubstring = (str = '') => { 
  const { length } = str; 
  if (length <= 1){ 
    return 0; 
  }; 
  const keys = [...new Set(str)]; 
  const arr = []; 
  let max = 0; 
  for (let i = 0; i < keys.length - 1; i++) { 
    for (let j = i + 1; j < keys.length; j++) { 
      arr.push(keys[i] + keys[j]); 
    } 
  } 
  arr.forEach(item => { 
    let sub = ''; 
    for (let i = 0; i < str.length; i++) { 
      if (sub[sub.length - 1] === str[i]) { 
        sub = ''; 
        break; 
      } 
      if (item.includes(str[i])) { 
        sub += str[i]; 
      } 
    } 
    if (sub && sub.length > max){ 
      max = sub.length; 
    }; 
  }); 
  return max; 
} 
console.log(longestSubstring(str));

আউটপুট

কনসোল আউটপুট:

4

  1. জাভাস্ক্রিপ্টে স্ট্রিংয়ের দুই অংশ রিমুভ করা

  2. C++-এ সর্বাধিক দুটি ভিন্ন ক্যারেক্টারવાલা লংগেস্ট সাবস্ট্রিং

  3. C++-এ সর্বোচ্চ K ভিন্ন ক্যারেক্টার সহ লংগেস্ট সাবস্ট্রিং (Longest Substring with At Most K Distinct Characters)

  4. পাইথন - K সংখ্যক স্বতন্ত্র ক্যারেক্টার সহ N-আকারের সাবস্ট্রিং