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

জাভাস্ক্রিপ্টে অ্যারে-এ এক-চতুর্থাংশ বেশি বারের এলিমেন্ট খুঁজে বের করা


সমস্যা

জাভাস্ক্রিপ্ট ফাংশন যা একটি ক্রমবর্ধমান সর্ট করা ইন্টিজার অ্যারে (arr) নেবে। অ্যারে-এ ঠিক একটি ইন্টিজার আছে যেটি ২৫% (এক-চতুর্থাংশ) এর বেশি বার ਆয়ত্ত হয়েছে। ফাংশনটি সেই সংখ্যাটি রিটার্ন করবে।

উদাহরণস্বরূপ, ইনপুট যদি হয় –

const arr = [3, 5, 5, 7, 7, 7, 7, 8, 9];

তবে আউটপুট হবে –

const output = 7;

উদাহরণ

কোডটি নিচের মতো –

const arr = [3, 5, 5, 7, 7, 7, 7, 8, 9]; const oneFourthElement = (arr = []) => { const len = arr.length / 4; const search = (left, right, target, direction = 'left') => { let index = -1 while (left <= right) { const middle = Math.floor(left + (right - left) / 2); if(arr[middle] === target){ index = middle; if(direction === 'left'){ right = middle - 1; }else{ left = middle + 1; }; }else if(arr[middle] < target){ left = middle + 1; }else{ right = middle - 1; }; }; return index; }; for(let i = 1; i <= 3; i++){ const index = Math.floor(len * i); const num = arr[index]; const loIndex = search(0, index, num, 'left'); const hiIndex = search(index, arr.length - 1, num, 'right'); if(hiIndex - loIndex + 1 > len){ return num; }; }; }; console.log(oneFourthElement(arr));

আউটপুট

কনসোলে আউটপুট হবে –

7
  1. জাভাস্ক্রিপ্টে অ্যারেতে উপাদান যোগ করা

  2. জাভাস্ক্রিপ্ট অ্যারেতে প্রথম ও শেষ এলিমেন্ট বের করা

  3. জাভাস্ক্রিপ্ট const কীওয়ার্ড

  4. জাভাস্ক্রিপ্ট কোড অ্যারের শেষ এলিমেন্ট প্রিন্ট করার জন্য