কম্পিউটার

জাভাস্ক্রিপ্টে একটি বাক্য থেকে n সবচেয়ে ঘন ঘন শব্দ খোঁজা


এই প্রশ্নের উদ্দেশ্যে, আমরা একটি বাক্যকে একটি স্ট্রিং হিসাবে সংজ্ঞায়িত করি যাতে ইংরেজি বর্ণমালা এবং বিরাম চিহ্ন রয়েছে এবং একটি শব্দ হোয়াইটস্পেস দ্বারা একত্রিত বাক্যটির একটি সাবস্ট্রিং।

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি বাক্য স্ট্রিং, str, প্রথম আর্গুমেন্ট হিসাবে এবং একটি সংখ্যা, সংখ্যা, দ্বিতীয় আর্গুমেন্ট হিসাবে নেয়। ফাংশনটি প্রথমে বাক্যে প্রতিটি শব্দের ফ্রিকোয়েন্সি গণনা করবে এবং তারপর ক্রমবর্ধমান ফ্রিকোয়েন্সি অনুসারে স্থাপন করা সর্বাধিক ঘন ঘন শব্দের সংখ্যা সহ দৈর্ঘ্যের সংখ্যার একটি অ্যারে ফেরত দেবে।

যেমন −

যদি ইনপুট বাক্য এবং সংখ্যা হয় −

const str = 'i am a good coder and i know that i can solve a problem';
const num = 2;

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

হওয়া উচিত
const output = ['i', 'a'];

কারণ 'i' 3 বার প্রদর্শিত হয় যখন 'a' অ্যারেতে 2 বার প্রদর্শিত হয় এবং তারা স্ট্রিং-এর 2টি সর্বাধিক ঘন ঘন শব্দ৷

উদাহরণ

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

const str = 'i am a good coder and i know that i can solve a problem';
const num = 2;
const findMostFrequent = (str = '', num = 1) => {
   const strArr = str.split(' ');
   const map = {};
   strArr.forEach(word => {
      if(map.hasOwnProperty(word)){
         map[word]++;
      }else{
         map[word] = 1;
      }
   });
   const frequencyArr = Object.keys(map).map(key => [key, map[key]]);
   frequencyArr.sort((a, b) => b[1] - a[1]);
   return frequencyArr.slice(0, num).map(el => el[0]);
};
console.log(findMostFrequent(str, num));

আউটপুট

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

[ 'i', 'a' ]

  1. জাভাস্ক্রিপ্টে একটি অ্যারে থেকে জোড় দৈর্ঘ্যের সংখ্যা খোঁজা

  2. জাভাস্ক্রিপ্ট ব্যবহার করে একটি স্ট্রিং থেকে দীর্ঘ শব্দ ফেরত দেওয়া

  3. জাভাস্ক্রিপ্টে পাঠ্যের একটি স্ট্রিংয়ে শীর্ষ তিনটি সবচেয়ে ঘটমান শব্দ খোঁজা

  4. জাভাস্ক্রিপ্ট ব্যবহার করে একটি অ্যারেতে সবচেয়ে ঘন ঘন শব্দ(গুলি) খোঁজা