কনটেন্টে যান

NN — Topic Name

উপরের H1-এ folder-এর number আর data structure-এর নাম বসাও, যেমন: # 03 — Linked List। তারপর এই হিন্ট লাইনটা মুছে দাও।

What is this data structure

এক-দুই লাইনে সহজ বাংলায় বলো এটা কী আর কেমন দেখতে — সাথে একটা ছোট mental picture দাও (যেমন: linked list = একটার পর একটা গাঁথা train-এর বগি)।

Why it exists

এই data structure কোন সমস্যা বা কষ্ট দূর করার জন্য এসেছে? আগের structure-এ কী অসুবিধা ছিল, এক-দুই লাইনে লেখো।

Where it is used

বাস্তব software-এ কোথায় ব্যবহার হয় কয়েকটা উদাহরণ bullet করে দাও (যেমন: browser-এর back button = stack, OS-এর task scheduling = queue)।

Prerequisites

এটা শেখার আগে কোন জিনিস গুলো জানা থাকা দরকার bullet করে লেখো (যেমন: pointer/reference, basic loop, function)।

What to revise before learning

ঠিক আগে কোন concept বা কোন আগের folder একবার ঝালিয়ে নেওয়া ভালো, সেটা link সহ এক-দুই লাইনে লেখো।

Learning goals

শেখা শেষে কী কী পারতে হবে — checklist আকারে লেখো। যেমন:

  • [ ] এক বাক্যে বলতে পারবে এই structure-এ insert / search / delete-এর complexity কত
  • [ ] কাগজে এর memory layout আঁকতে পারবে
  • [ ] কোনো hint ছাড়া একটা core pattern-এর problem solve করতে পারবে

Problem categories

এই topic-এর সাধারণ problem-এর ধরন গুলো table-এ সাজাও:

Category Typical question shape
category-র নাম (যেমন: two pointers) এই ধরনের প্রশ্ন সাধারণত কেমন দেখতে হয়

Practice list

Easy থেকে Hard ক্রমে practice problem সাজাও। প্রতিটা problem-এর সাথে তার pattern আর official source link ট্যাগ করো। Problem-এর বর্ণনা নিজের ভাষায় এক লাইনে লেখো — statement copy কোরো না।

Easy

Problem Source Pattern
Problem-এর নাম, নিজের ভাষায় এক লাইনে কী চায় Platform + number এবং যাচাই করা official URL বসান pattern-এর নাম

Medium

Problem Source Pattern
একই format-এ medium problem গুলো এখানে যোগ করো Platform + number এবং যাচাই করা official URL বসান pattern-এর নাম

Hard

Problem Source Pattern
একই format-এ hard problem গুলো এখানে যোগ করো Platform + number এবং যাচাই করা official URL বসান pattern-এর নাম

Visualization ideas

এই structure বোঝার জন্য কী কী ছবি আঁকা বা animation দেখা যায় bullet করে লেখো (নিজের ASCII diagram, VisuAlgo-র মতো site-এর link ইত্যাদি)।

Common mistakes

এই topic শেখার সময় বা coding-এ যেসব ভুল প্রায়ই হয় bullet করে লেখো (যেমন: null/empty case ভুলে যাওয়া, off-by-one)।

Connection to interview problems

বড় tech company-র interview-তে এই topic কীভাবে আসে এক-দুই লাইনে বুঝিয়ে বলো। মনে রেখো: "asked by Google/Amazon" নয় — "Google-style pattern" / "common interview pattern" লেখো।

Connection to competitive programming

CP-তে (Codeforces, CSES ইত্যাদি) এই structure কোথায় কাজে লাগে এক-দুই লাইনে লেখো।

এই folder-এর file গুলো কোন ক্রমে পড়লে সবচেয়ে ভালো বোঝা যাবে — numbered list-এ সাজাও। যেমন:

  1. concept.md — analogy, memory picture, complexity
  2. visual-explanation.md — operation গুলো frame by frame
  3. problems/ — easy থেকে hard পর্যন্ত practice

Source map

এই folder-এর প্রতিটা idea আর link কোথা থেকে এসেছে তার হিসাব source-map.md-তে থাকে। নতুন অধ্যায়ে সেই file তৈরি করে link দিন; উৎস লেখার ছাঁচ অনুসরণ করুন।


মনে রাখার নিয়ম (legal): সব নিজের ভাষায় লেখো; problem statement copy কোরো না; official link শুধু attribution-এর জন্য রাখো; "asked by Google/Amazon" এমন দাবি কোরো না — বরং "Google-style pattern" / "common interview pattern" লেখো।