Skip to content

00 — Books and Learning Sources (সব শেখার legal উৎস এক জায়গায়)

এই folder পুরো repo-র "কোথা থেকে শিখব" map। DSA শিখতে গিয়ে প্রায় সবাই একটা সমস্যায় পড়ে — "এত বই, এত website, এত YouTube, শুরু করব কোনটা দিয়ে?" এই folder সেই প্রশ্নের একটা curated, legal উত্তর। এখানে প্রতিটা resource হয় open-access, নাহয় official platform; কোনো pirated PDF বা চুরি করা link এখানে নেই।

এই section-টা আসলে কী

এটা তিনটা জিনিস একসাথে:

  • একটা সাজানো তালিকা — কোন free বই, কোন online judge, কোন university course আর কোন interview resource ঠিক কোন কাজে লাগে।
  • একটা legal boundary — কী ব্যবহার করা যাবে আর কীভাবে credit দিতে হবে, তার পুরো নিয়ম legal-resource-policy.md-তে।
  • তোমার decision-saver — "এখন কী পড়ব" প্রতিবার ভাবতে হবে না; phase ধরে আগেই বলে দেওয়া আছে।

জরুরি: যেকোনো resource পড়া বা ব্যবহার করার আগে একবার legal-resource-policy.md পড়ে নাও। ওটাই এই repo-র copyright আর sourcing-এর মূল নিয়ম, আর বাকি সব file ওটার উপর দাঁড়িয়ে আছে।

তুমি কীভাবে resource বাছবে (ডুবে না গিয়ে)

তোমার profile মাথায় রেখে: basics একটু rusty, দিনে 2-3 ঘন্টা, লক্ষ্য ~4 মাসে Amazon/Google-style interview-ready হওয়া, ভাষা Python। এই profile-এ নিয়মগুলো সোজা:

  • একসাথে একটার বেশি "main" বই ধরবে না। একটা topic = একটাই primary source; বাকিগুলো শুধু আটকে গেলে উঁকি দেওয়ার জন্য।
  • Interview-first ভাবো। সময় কম, তাই pattern আর problem-solving আগে; CP depth (segment tree, flows, string algorithms) পরে — offer পাওয়ার পরে।
  • প্রতিটা resource-এর পাশে নিচের file-গুলোতে লেখা আছে কতটুকু পড়বে আর কী skip করবে। সেই skip-list মেনে চললেই অকারণে ডুববে না।
  • হাতে যেটা আছে সেটা শেষ করো, নতুন "better" resource খোঁজা বন্ধ করো — resource hopping-ই সবচেয়ে বড় সময় নষ্ট।

দিনের 2-3 ঘন্টা মোটামুটি যেভাবে ভাগ হবে

  • ~40 মিনিট theory — একটা topic, এই folder-এর recommend করা primary source থেকে।
  • ~80-110 মিনিট solving — বেশিরভাগ দিন LeetCode/CSES, সপ্তাহে একটা Codeforces Div 3/4 শুধু speed-এর জন্য।
  • পুরো 17-সপ্তাহের sequence চাইলে দেখো STUDY-PLAN.md আর এই folder-এর book-reading-order.md

তোমার জন্য top 5 free resource

পুরো তালিকায় ডোবার আগে — এই 5টা ধরলেই কাজের 80% হয়ে যায়:

  1. Competitive Programmer's Handbook (Antti Laaksonen)https://cses.fi/book/book.pdf — একটাই free বইয়ে algorithm আর দরকারি math, পরিষ্কার ভাষায়; license CC BY-NC-SA।
  2. NeetCodehttps://neetcode.io/roadmap — interview pattern শেখার সবচেয়ে সাজানো free roadmap + video; এটাই তোমার দৈনিক practice-এর মেরুদণ্ড।
  3. USACO Guidehttps://usaco.guide/ — Bronze → Platinum structured path; কোন topic কোন order-এ আসবে সেটা পরিষ্কার করে দেয়।
  4. CP-Algorithmshttps://cp-algorithms.com/ — algorithm-এর free encyclopedia; কোনো technique-এর exact form দরকার হলে এখানে আসবে।
  5. Algorithms (Jeff Erickson)https://jeffe.cs.illinois.edu/teaching/algorithms/ — recursion, DP আর graph-এর গভীর, intuition-গড়া free বই।

পুরো verified free তালিকা (reference)

Top 5-এর বাইরেও এই repo যেগুলো ব্যবহার করে, সবই free / legal:

প্রতিটার পুরো ব্যবহার-নির্দেশ (কতটুকু পড়বে, কী skip করবে) পরের file-গুলোতে আছে।

এই folder-এর বাকি file-গুলো

এই source-গুলো repo-তে কীভাবে ব্যবহার হয়

এই repo-র সব লেখা নিজের ভাষায়, scratch থেকে তৈরি। বাইরের কোনো source থেকে idea নিলে সেটার official link প্রতিটা folder-এর source-map.md-তে লেখা থাকে, সাথে কীভাবে ব্যবহার হয়েছে তাও। মানে — তুমি নিশ্চিন্তে শিখতে পারো, কারণ এখানে copyright-এর কোনো গোলমাল নেই, আর প্রতিটা দাবি যাচাই করার মতো link দেওয়া আছে।

যে ভুলগুলো এড়াবে

  • Resource hopping — তিন দিন পরপর নতুন course ধরা। একটা শেষ করো, তারপর পরেরটা।
  • শুধু পড়া, solve না করা — video দেখা সহজ, কিন্তু শেখা হয় হাতে problem solve করলে; 70% সময় solving-এ।
  • সব একসাথে শেখা — segment tree আর string hashing এখন তোমার দরকার নেই; 4-মাসের skip-list মানো।
  • Pirated PDF খোঁজা — দরকার নেই; উপরের সব free resource-ই যথেষ্ট, আর legal।

শুরুটা ঠিক এভাবে করো

  1. legal-resource-policy.md একবার পড়ে নাও — 5 মিনিট লাগবে।
  2. book-reading-order.md খুলে দেখো তুমি এখন কোন phase-এ।
  3. উপরের top 5 থেকে তোমার phase-এর primary resource-টা ঠিক করো।
  4. একটা online judge-এ account খোলো (online-judge-sources.md দেখে), আর আজই প্রথম problem-টা solve করো।

এক লাইনে মনে রাখার কথা

Free resource-এর অভাব নেই — অভাব হলো নিয়ম করে শেষ করার। কম resource, বেশি practice, আর সব কিছু নিজের ভাষায় লিখে রাখা — এটাই এই repo-র পুরো দর্শন।