সমস্যা
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা স্ট্রিংগুলির একটি অ্যারে নেয়৷ অ্যারের সমস্ত স্ট্রিং একই অক্ষর, বা অক্ষরগুলির পুনরাবৃত্তি, এবং শুধুমাত্র একটি স্ট্রিং অক্ষরের একটি ভিন্ন সেট ধারণ করে৷ আমাদের ফাংশনটি খুঁজে পাওয়া উচিত এবং সেই স্ট্রিংটি ফিরিয়ে দেওয়া উচিত।
উদাহরণস্বরূপ
যদি অ্যারে −
হয়[‘ba’, 'abc', 'acb', 'bac', 'foo', 'bca', 'cab', 'cba' ]
তারপর প্রয়োজনীয় স্ট্রিং হল 'foo'।
স্ট্রিংগুলিতে স্পেস থাকতে পারে। স্পেসগুলি তাৎপর্যপূর্ণ নয়, শুধুমাত্র অ-স্পেস চিহ্নগুলি গুরুত্বপূর্ণ। উদাহরণ, একটি স্ট্রিং যা শুধুমাত্র স্পেস ধারণ করে একটি খালি স্ট্রিংয়ের মতো। এটি নিশ্চিত যে অ্যারেটিতে 3টির বেশি স্ট্রিং রয়েছে৷
৷উদাহরণ
নিম্নলিখিত কোড -
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