Saturday, 22 March 2025

How to create a string character map in JavaScript

স্ট্রিং ক্যারেক্টার ম্যাপ তৈরি করার সহজ উপায়: জাভাস্ক্রিপ্ট উদাহরণ

 

 


হে সুন্দর মানুষজন,

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

স্ট্রিং কাকে বলে ?

আমরা তো সবাই জানি যে স্ট্রিং কি বা কাকে বলে । একদম সহজ ভাবে বলতে গেলে জাভাস্ক্রিপ্টে সিঙ্গেল বা ডাবল কোটেশানের মাঝে যাই থাকে তাকেই স্ট্রিং বলে । স্ট্রিং মুলত কতগুলো ক্যারেক্টারের সমষ্টি ।

ক্যারেক্টার ম্যাপ কী ?

কোনো একটা স্ট্রিং এ কি কি ক্যারেক্টার আছে তার লিস্ট করা সাথে কোন ক্যারেক্টার কতোবার আছে তার হিসেব করা । যেমন ধরি, আমাদের কাছে "babu" নামে একটি স্ট্রিং আছে, তাহলে এর ক্যারেক্টার ম্যাপ হবে এইরকম :-

{
    b: 2,
    a: 1,
    u: 1
}

আমরা দেখতে পাইতেছি যে, "babu" নামের এই স্ট্রিং টাতে কিন্তু b ক্যারেক্টার দুইটি তাই b : 2 এমনভাবে দেখাচ্ছে এবং a,u একটি করে তাই তাদের পরিমাণটাও একটি(1) করে দেখাচ্ছে।

ক্যারেক্টার ম্যাপ তৈরি করার সুবিধা কী ?

কোনো একটি স্ট্রিং এর ক্যারেক্টার ম্যাপ তৈরি করে খুব সহজেই বিভিন্ন স্ট্রিং রিলেটেড সমস্যা সমাধান করতে পারবেন যেমন -

১। স্ট্রিং এ সবচেয়ে কমন ক্যারেক্টার কোনটি বা কোনগুলো ?

২। স্ট্রিং টি অ্যানাগ্রাম কি নাহ ?

৩। স্ট্রিং এ কোনো রিপিটেড ক্যারেক্টার আছে কি নাহ ?

- ক্যারেক্টার ম্যাপ তৈরি -

const characterMap = (str) => {
  const charMap = {};
  str.split("").forEach((char) => {
    if (charMap[char]) {
      charMap[char]++;
    } else {
      charMap[char] = 1;
    }
  });

  return charMap;
};

আমাদের ক্যারেক্টার ম্যাপ তৈরি, এখন চেক করে দেখা যাক যে ঠিক-ঠাক উত্তর দিচ্ছে কি নাহ ?

const charMap = characterMap("babu");
console.log(charMap)

OUTPUT :

{
    b: 2,
    a: 1,
    u: 1
}

সবকিছু ঠিক-ঠাক । তবে একটা কথা বলে রাখা ভালো যে আপনি অনেক ভাবেই ক্যারেক্টার ম্যাপ তৈরি করতে পারেন । আপনাকে যে উপরোক্ত ভাবেই ক্যারেক্টার ম্যাপ তৈরি করতে হবে সেই রকম কোনো বাধা-ধরা নিয়ম নেই ।

- Another way to create CharacterMap -

const characterMap = (str) => {
  const charMap = {};
  for (let char of str) {
    charMap[char] ? charMap[char]++ : (charMap[char] = 1);
  }

  return charMap;
};

- Check it -

const charMap = characterMap("hello");
console.log(charMap)

OUTPUT :

{
    h: 1,
    e: 1,
    l: 2,
    o:1
}

আশা করি বুঝতে পারছেন। ধন্যবাদ সবাইকে ।

Share:

Related Posts:

0 comments:

Post a Comment