কম্পিউটার

জাভাস্ক্রিপ্টে একটি স্ট্রিং প্যালিনড্রোম করা যায় কিনা তা পরীক্ষা করা হচ্ছে


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম এবং একমাত্র যুক্তি হিসাবে একটি স্ট্রিং নেয়৷

আমাদের ফাংশনের কাজ হল স্ট্রিং থেকে সর্বাধিক একটি অক্ষর মুছে দিয়ে আমরা সেই স্ট্রিংটিকে প্যালিনড্রোম স্ট্রিং করতে পারি কিনা তা পরীক্ষা করা। যদি আমরা তা করতে পারি, ফাংশনটি সত্য, অন্যথায় মিথ্যা প্রত্যাবর্তন করা উচিত।

যেমন −

যদি ইনপুট স্ট্রিং −

হয়
const str = 'kjlk';

তারপর আউটপুট −

হওয়া উচিত
const output = true;

কারণ স্ট্রিং থেকে 'l' মুছে দিলে শুধুমাত্র 'kjk' অবশিষ্ট থাকবে যা একটি প্যালিনড্রোম স্ট্রিং।

উদাহরণ

এর জন্য কোড হবে −

const str = 'kjlk';
const isPalindrome = (str = '', start, end) => {
   while (start < end) {
      if (str[start] != str[end]) {
         return false;
      };
      start ++;
      end --;
   };
   return true;
};
const canMakePalindrome = (str = '') => {
   let left = 0, right = str.length - 1;
   while (left < right - 1) {
      if (str[left] !== str[right]) {
         if (isPalindrome(str, left, right - 1)) {
            return true;
         };
         if (isPalindrome(str, left + 1, right)) {
            return true;
         };
         return false;
      }else {
         left ++;
         right --;
      };
   };
   return true;
}
console.log(canMakePalindrome(str));

আউটপুট

এবং কনসোলে আউটপুট হবে −

true

  1. আমি কিভাবে জাভাস্ক্রিপ্টে একটি স্ট্রিংকে বুলিয়ানে রূপান্তর করতে পারি?

  2. কত উপায়ে আমরা জাভাস্ক্রিপ্টে একটি স্ট্রিং বিভক্ত করতে পারি?

  3. জাভাস্ক্রিপ্টে একটি স্ট্রিং বড় হাতের কিনা তা আমি কিভাবে পরীক্ষা করতে পারি?

  4. জাভাস্ক্রিপ্ট একটি স্ট্রিংকে বুলিয়ানে রূপান্তর করুন