Finding the Maximum Frequency Character in JavaScript Strings

 Finding the Maximum Frequency Character in JavaScript Strings

দুই বন্ধু রাফি আর সোহান, একদিন বিকালে বাগানে বসে গল্প করছিলো। হঠাৎ সোহান, রাফি কে বলল, কোনো একটি স্ট্রিংয়ের মধ্যে কোন অক্ষরটা সবচেয়ে বেশি ব্যবহৃত হয়েছে সেটা বের করতে পারবি? রাফি একটু ভাবলো এবং বলল, হুম, অবশ্যই! এটা JavaScript এর মাধ্যমে সহজে বের করতে পারবো।  

চলো সমস্যাটি নিয়ে আলোচনা করা যাক, মনে কর স্ট্রিংটা হলো ‘hello world’। আমাদের কাজ হচ্ছে এই স্ট্রিংয়ে কোন অক্ষরটি সবচেয়ে বেশিসংখ্যক আছে সেটা বের করা। প্রথমে আমি একটা ফাংশন লিখবো, যেটা স্ট্রিং কে ইনপুট হিসেবে নেবে এবং সর্বাধিক ব্যবহৃত অক্ষরটি রিটার্ন করবে।

কোড এবং কোডের ব্যাখ্যা

function mostFrequentChar(str) {

    // ধাপ ১: একটি ফ্রিকোয়েন্সি অবজেক্ট তৈরি করি যেখানে অক্ষর গুলো এবং তাদের কাউন্ট রাখা হবে।

    const frequency = {};

    // ধাপ ২: স্ট্রিং এর প্রতিটি অক্ষর লুপ করি

    for (let char of str) {

        // যদি অক্ষরটি অবজেক্টে থাকে, তাহলে কাউন্ট ১ বাড়িয়ে দাও, না থাকলে ১ সেট করো।

        if (frequency[char]) {
            frequency[char]++;

        } else {
            frequency[char] = 1;

        }
    }

    // ধাপ ৩: সর্বাধিক ব্যবহৃত অক্ষর এবং তার সংখ্যা খুঁজে বের করা

    let maxChar = '';
    let maxCount = 0;
    // অবজেক্টের প্রতিটি আইটেম চেক করি

    for (let char in frequency) {

        // যদি কোন অক্ষরের সংখ্যা maxCount এর চেয়ে বেশি হয় তাহলে সেটি আপডেট করা
        if (frequency[char] > maxCount) {
            maxChar = char;
            maxCount = frequency[char];

        }

    }

    // ধাপ ৪: সর্বাধিক ব্যবহৃত অক্ষরটি রিটার্ন করি
    return maxChar;

}

// উদাহরণ স্ট্রিং
const exampleStr = "hello world";
console.log(`Most frequent character is: ${mostFrequentChar(exampleStr)}`);


কোডের ব্যাখ্যা

১. প্রথমে frequency নামে একটি খালি অবজেক্ট লিখা হয়েছে। এখানে প্রতিটি অক্ষর এবং তার সংখ্যা রাখা হবে।

২. for লুপের সাহায্যে স্ট্রিংয়ের প্রতিটি অক্ষর চেক করা হয়। যদি অক্ষরটি আগেই frequency অবজেক্ট এ থাকে, তাহলে তার কাউন্ট এক বাড়ানো হয়, আর না থাকলে ১ সেট করা হয়। উদাহরণস্বরূপ, "hello world" কে যদি স্ট্রিং হিসেবে ধরা হয়, তাহলে frequency অবজেক্ট হবে এমন - {h: 1, e: 1, l: 3, o: 2, w: 1, r: 1, d: 1}

৩. এরপর frequency তে থাকা প্রতিটি অক্ষরের সংখ্যা চেক করা হয়। যদি কোনো অক্ষরের সংখ্যা maxCount এর চেয়ে বেশি হয়, তাহলে সেটি maxChar এবং তার সংখ্যা maxCount হিসেবে আপডেট করা হয়।

৪. সব শেষে, সর্বাধিক ব্যবহৃত অক্ষর maxChar রিটার্ন করা হয়।

 

ওয়েবসাইটটি বুকমার্ক করে রাখুন! পোষ্টটি যদি ভালো লাগে এবং বন্ধুরা যাতে মিস না করে, পোষ্টটি শেয়ার করতে ভুলবেন না। অবশ্যই লাইক ও কমেন্ট করবেন যাতে করে আমরা প্রতিনিয়ত নতুন নতুন সমস্যার পাশাপাশি সমাধান নিয়ে হাজির হতে পারি এবং আপনাদেরও যদি কোডিং সম্পর্কিত কোনো সমস্যা থাকে তাহলে কমেন্টবক্সে জানিয়ে দিন সমাধান করার চেষ্টা করবো, ইনশাআল্লাহ্‌।

About the author

AHSHAN HABIB
Hello! I am Ahshan Habib. Blogging is My Hobby and I Would Like to Share my Knowledge With Everyone. Here I Will Share Every Day About Education, Technology, and Programming. So Stay With us And Share my Page on Your Social Platform.

Post a Comment