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

জাভাস্ক্রিপ্টে অ্যারেতে একমাত্র ইউনিক স্ট্রিং খুঁজে বের করা

সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি স্ট্রিং অ্যারে নেবে। অ্যারেতে সব স্ট্রিং একই ক্যারেক্টার বা ক্যারেক্টার রিপিটিশন ধারণ করে, শুধু একটি স্ট্রিং ভিন্ন ক্যারেক্টার সেট ধারণ করে। ফাংশনটি সেটি খুঁজে বের করে রিটার্ন করবে।

উদাহরণস্বরূপ

যদি অ্যারে হয়:

['ba', 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ]

তাহলে প্রয়োজনীয় স্ট্রিংটি হলো 'foo'।

স্ট্রিংতে স্পেইস থাকতে পারে। স্পেইস গুরুত্বপূর্ণ নয়, শুধু নন-স্পেইস সিম্বল গুরুত্বপূর্ণ। উদাহরণস্বরূপ, শুধু স্পেইস ধারণকারী স্ট্রিং খালি স্ট্রিংয়ের মত। গ্যারান্টিয়া আছে অ্যারেতে ৩টির অধিক স্ট্রিং থাকবে।

উদাহরণ

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

const arr = ['ba', 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ]; 
const findOnlyUnique = (arr = []) => { 
   const first = []; 
   for(i = 0; i < arr.length; i++){ 
      first.push(arr[i].toLowerCase().replace(/\s/g, '').split('')); 
      for (j = 0; j < arr[i].length; j++){ 
          first[i].sort(); 
      } 
   } 
   const second = []; 
   for (k = 0; k < arr.length; k++){ 
      second.push(first[k].join()); 
   } 
   second.sort(); 
   const third = []; 
   if (second[1] !== second[second.length - 1]) { 
      third.push(second[second.length - 1]); 
    }else{ 
      third.push(second[0]); 
    } 
   const last = []; 
   for(let n = 0; n < first.length; n++){ 
      last.push(first[n].join(',')); 
   } 
   return (arr[last.indexOf(third[0])]); 
}; 
console.log(findOnlyUnique(arr));

আউটপুট

foo
  1. জাভাস্ক্রিপ্টে স্ট্রিংয়ে সর্বোচ্চ দীর্ঘ স্বরবর্ণ (vowel) সাবস্ট্রিং দৈর্ঘ্য

  2. জাভাস্ক্রিপ্টে সর্টেড অ্যারে থেকে আউট-অফ-অর্ডার এলিমেন্ট খুঁজে বের করা

  3. জাভাস্ক্রিপ্টে nth ইনডেক্সে থাকা অ্যারে উপাদানের nth ঘাত বের করা

  4. জাভাস্ক্রিপ্টে অ্যারে থেকে সবচেয়ে ज्यादा ফ্রিকোয়েন্সি वाले শব্দগুলো খুঁজে বের করা