ফ্রন্টএন্ড লিনিয়ার ডেটা স্ট্রাকচার

লিনিয়ার ডেটা স্ট্রাকচার উপাদানগুলোকে একটি ক্রমানুসারে সাজায়। প্রতিটি উপাদানের একটি পূর্বসূরি (predecessor) এবং একটি উত্তরসূরি (successor) থাকে।

Arrays অ্যারে (Arrays) হলো JavaScript-এর প্রধান হাতিয়ার। এগুলো অবিচ্ছিন্ন মেমরি (contiguous memory) ব্যবহার করে। এর ফলে আপনি ইনডেক্সের মাধ্যমে যেকোনো উপাদান তাৎক্ষণিকভাবে অ্যাক্সেস করতে পারেন।

নোট: যখন একটি অ্যারে অনেক বড় হয়ে যায়, তখন JavaScript-কে একটি বড় মেমরি ব্লক বরাদ্দ করতে হয় এবং সবকিছু সেখানে কপি করতে হয়। এতে পারফরম্যান্স কমে যায়।

Stacks একটি স্ট্যাক (Stack) LIFO নিয়ম অনুসরণ করে: Last In, First Out। প্লেটের একটি স্তূপের কথা চিন্তা করুন। আপনি কেবল ওপর থেকে উপাদান যোগ বা অপসারণ করতে পারেন।

Queues একটি কিউ (Queue) FIFO নিয়ম অনুসরণ করে: First In, First Out। একটি দোকানের লাইনের কথা চিন্তা করুন।

সতর্কবার্তা: বড় ডেটাসেটের ক্ষেত্রে অ্যারেতে shift ব্যবহার করা ধীরগতির। ফাঁকা জায়গা পূরণ করতে প্রতিটি উপাদানকে বাম দিকে সরে আসতে হয়। প্রচুর পরিমাণে ডেটার জন্য এর পরিবর্তে একটি লিঙ্কড লিস্ট (linked list) ব্যবহার করুন।

Linked Lists একটি লিঙ্কড লিস্ট (Linked list) নোড (node) নিয়ে গঠিত। প্রতিটি নোডে ডেটা এবং পরবর্তী নোডের একটি পয়েন্টার (pointer) থাকে।

Comparison Summary:

Pro Tips for JavaScript:

উৎস: https://dev.to/markyu/frontend-linear-data-structures-deep-dive-arrays-stacks-queues-and-linked-lists-mp2