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

প্রথম অক্ষর অনুযায়ী ডুপ্লিকেট উপাদান মুছে ফেলা - JavaScript

এই টিউটোরিয়ালে আমরা শিখব কিভাবে JavaScript-এ একটি স্ট্রিং অ্যারে থেকে একই প্রথম অক্ষর দিয়ে শুরু হওয়া ডুপ্লিকেট উপাদানগুলো মুছে ফেলা যায়।

সমস্যা বিবরণ

আমাদের একটি ফাংশন লিখতে হবে যা স্ট্রিংয়ের একটি অ্যারে গ্রহণ করবে এবং যেসব স্ট্রিং একই প্রথম অক্ষর দিয়ে শুরু হয়েছে, তাদের মধ্যে শুধুমাত্র প্রথমটি রাখবে, বাকিগুলো মুছে দেবে।

উদাহরণ

ধরুন আমাদের নিচের অ্যারেটি আছে:

const arr = ['Apple', 'Jack', 'Army', 'Car', 'Jason'];

এখানে 'A' দিয়ে শুরু হয়েছে 'Apple' এবং 'Army' - দুটি। 'J' দিয়ে শুরু হয়েছে 'Jack' এবং 'Jason' - দুটি। ফলস্বরূপ আউটপুট হবে:

[ 'Apple', 'Jack', 'Car' ]

সমাধান

এই সমস্যাটি সমাধানের জন্য আমরা Map অবজেক্ট ব্যবহার করব যাতে প্রথম অক্ষরগুলো ট্র্যাক করা যায়।

const arr = ['Apple', 'Jack', 'Army', 'Car', 'Jason'];

const deleteSameLetterWord = (arr) => {
  const map = new Map();
  
  arr.forEach((el, ind) => {
    const firstChar = el[0];
    if (map.has(firstChar)) {
      // এই অক্ষরটি ইতিমধ্যে আছে, তাই এই উপাদানটি মুছে ফেলুন
      arr.splice(ind, 1);
    } else {
      // নতুন অক্ষর, তাই Map-এ যোগ করুন
      map.set(firstChar, true);
    }
  });
};

deleteSameLetterWord(arr);
console.log(arr); // [ 'Apple', 'Jack', 'Car' ]

কোড ব্যাখ্যা

  • Map অবজেক্ট: প্রথম অক্ষরগুলো কী হিসেবে সংরক্ষণ করতে ব্যবহৃত হয়েছে
  • forEach লুপ: প্রতিটি উপাদানের জন্য প্রথম অক্ষর চেক করা হয়েছে
  • splice(): ডুপ্লিকেট পাওয়া গেলে সেটি অ্যারে থেকে সরিয়ে দেওয়া হয়েছে

উৎপাদন

[ 'Apple', 'Jack', 'Car' ]
  1. জাভাস্ক্রিপ্ট: অ্যাডজেসেন্ট এলিমেন্টস প্রোডাক্ট অ্যালগরিদম

  2. জাভাস্ক্রিপ্টে ভিন্ন ইনডেক্সে সমান মান বিশিষ্ট পেয়ার গণনা

  3. জাভাস্ক্রিপ্টে অ্যারে এলিমেন্টে সাধারণ অক্ষর (ডুপ্লিকেট সহ) খুঁজে বের করা

  4. জাভাস্ক্রিপ্টে এলিমেন্টের ফ্রিকোয়েন্সি অনুযায়ী অ্যারে সাজানো