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

জাভাস্ক্রিপ্টে অ্যালফানিউমেরিক সর্টিং


সমস্যা বিবরণ

মিক্সড অ্যারে সর্ট করতে হবে: প্রথম অ্যালফাবেটিক্যালি, তারপর নম্বর অনুযায়ী।

ইনপুট:

const arr = ['Ab-1', 'Ab-11', 'Ab-12', 'ab-10', 'ab-100', 'ab-101', 'ab2', 'ab-3', 'ab-105'];

সমাধান

const arr = ['Ab-1', 'Ab-11', 'Ab-12', 'ab-10', 'ab-100', 'ab-101', 'ab2', 'ab-3', 'ab-105'];

const alphaNumericSort = (arr = []) => {
  arr.sort((a, b) => {
    const aPart = a.split('-');
    const bPart = b.split('-');
    return aPart[0].toLowerCase().localeCompare(bPart[0].toLowerCase()) || aPart[1] - bPart[1];
  });
};

alphaNumericSort(arr);
console.log(arr);

আউটপুট

[ 'Ab-1', 'ab-2', 'ab-3', 'ab-10', 'Ab-11', 'Ab-12', 'ab-100', 'ab-101', 'ab-105' ]

ব্যাখ্যা

  • split('-') দিয়ে প্রিফিক্স এবং নম্বর পৃথক করা।
  • localeCompare দিয়ে কেস-ইনসেনসিটিভ স্ট্রিং তুলনা।
  • যদি প্রিফিক্স সমান হয়, তবে নম্বর তুলনা (aPart[1] - bPart[1])।
  1. জাভাস্ক্রিপ্টে বাইনারি ট্রি তৈরি করা

  2. জাভাস্ক্রিপ্ট DFS ব্যবহার করে টপোলজিক্যাল সর্টিং

  3. Firebug ব্যবহার করে জাভাস্ক্রিপ্ট ডিবাগিং

  4. জাভাস্ক্রিপ্ট ইমপোর্টে {} ব্রেসের ব্যবহার