জাভাস্ক্রিপ্ট টিউটোরিয়াল-শিখুন গল্পে গল্পে সাথে 1100+ Exercise

  • জাভাস্ক্রিপ্ট পরিচিতি-Introduction to JavaScript
  • প্রোগ্রামিং শুরু করতে কতটুকু গণিত লাগে?
  • প্রোগ্রামিং শুরু করতে কতটুকু ইংরেজি জানা লাগে?
  • ভালো প্রোগ্রামার কিভাবে হবো? [+৭টি গুরুত্বপূর্ণ টিপস]
  • উচ্চতার উষ্ণতা
  • লিপি আপার লিপ ইয়ার
  • বিজোড় সংখ্যার আজিব গড়
  • যমজ বিরিয়ানি
  • অদলবদল ভোম্বল

যমজ বিরিয়ানি 


বিরিয়ানি দেয়া শুরু করলে একই পোলাপান ঘুরে ঘুরে বারবার চলে আসে বিরিয়ানি নেয়ার লাইনে, বিরিয়ানির প্যাকেট নিতে। একই পারসন বারবার লাইনে দাঁড়ায়, তারপর ধরা খাইলে বলে, ঐটা আমি ছিলাম না। ঐটা ছিল আমার যমজ ভাই। এমন একটা ভাব যে, বিরানির গন্ধে সে যমজ, ডাবল যমজ হয়ে বারবার বিরিয়ানি খাওয়ার লাইনে দাঁড়িয়ে যাচ্ছে। একজন মানুষই তিন-চার প্যাকেট বিরিয়ানি নিয়ে চলে যাচ্ছে।


এই কাজটা যেন করতে না পারে, অর্থাৎ একটা লাইনে যেন একই মানুষ বারবার দাঁড়াতে না পারে বা একটা array-এর মধ্যে একই মান বা একই উপাদান যেন একাধিকবার না থাকে, সেই কাজ তোকে করতে হবে। আর যদি কোনো কারণে কোনো একটা মান একাধিকবার চলে আসে, তাহলে সেগুলাকে রিমুভ করে দিতে হবে বা অ্যারে থেকে ডুপ্লিকেট মানগুলোকে সরিয়ে ক্লিন একটা অ্যারে হবে, যেখানে একইমান একাধিকবার নাই।


ধর, আমাদের কাছে দুটি অ্যারে রয়েছে:

  const students = ['abul', 'babul', 'cabul', 'abul', 'babul', 'dabul'];
  const numbers = [1, 5, 61, 5, 87, 7, 5, 81, 61];


একটু ভালো করে খেয়াল করলে দেখবি, দুইটা অ্যারের মধ্যেই কয়েকটা মান একাধিকবার আছে। অর্থাৎ কিছু ভ্যালু ডুপ্লিকেট আছে। এখন কাজ হচ্ছে ডুপ্লিকেট সরিয়ে ফেলা। অর্থাৎ যেসব মান একাধিকবার আছে, সেগুলা জাস্ট একবার থাকবে।


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


  const students = ['abul', 'babul', 'cabul', 'abul', 'babul', 'dabul'];
  const numbers = [1, 5, 61, 5, 87, 7, 5, 81, 61];

  function noDuplicate(array) {
    const unique = [ ];
    for (const item of array) {
      if (unique.includes(item) === false) {
        unique.push(item);
      }
    }
    return unique;
  }

  const uniqueArray = noDuplicate(students);
  console.log(uniqueArray);

Output:
[ 'abul', 'babul', 'cabul', 'dabul' ]


যখন নতুন অ্যারেটাকে প্রিন্ট করবি, তখন দেখবি ডুপ্লিকেটগুলো অলরেডি রিমুভ হয়ে গেছে। 


Practice: 

  1. ডুপ্লিকেট রিমুভ করার পুরা কোড নিজে বুঝে বুঝে লিখে এই অ্যারে [1, 5, 61, 5, 87, 7, 5, 81, 61]; দিয়ে চেক করবি। 


Previous PageNext Page