coding-interview-university/translations/README-bn.md

256 KiB
Raw Blame History

কোডিং সাক্ষাত্কার বিশ্ববিদ্যালয়

আমি এটি, প্রথমে,একটি সফটওয়্যার ইঞ্জিনিয়ার হওয়ার জন্য অধ্যয়নের বিষয়গুলির একটি স্বল্প-করণীয় তালিকা হিসাবে তৈরি করেছিলাম, তবে এটি আজ এক বৃহত তালিকার রুপ ধারণ করেছে যা আপনি দেখতে পাচ্ছেন । এই অধ্যয়নের পরিকল্পনাটি শেষ করার পরে, আমি অ্যামাজনে সফটওয়্যার ডেভলপমেন্ট ইঞ্জিনিয়ার হিসাবে নিয়োগ পেয়েছি।!

আপনাকে সম্ভবত আমার মতো পড়াশোনা করতে হবে না। যাইহোক, আপনার যা কিছু প্রয়োজন তা এখানেই পাবেন।

আমি বেশ কয়েক মাস ধরে প্রতিদিন প্রায় ৮-১২ ঘন্টা অধ্যয়ন করেছি। এটি আমার গল্প: গুগল সাক্ষাত্কারের জন্যি কেন আমি ৮ মাস পূর্ণ-সময় অধ্যয়ন করেছি?

দয়া করে মনে রাখবেন: আপনাকে আমার মত পড়াশুনা করতে হবে না। আমার জানার প্রয়োজন নেই এমন জিনিসগুলিতে আমি অনেক সময় নষ্ট করেছি। নিচে যে সম্পর্কে আরও তথ্য আছে। আপনার মূল্যবান সময় নষ্ট না করে আমি আপনাকে সেখানে যেতে সাহায্য করব।

এখানে তালিকাভুক্ত আইটেমগুলি আপনাকে, অ্যামাজন, ফেসবুক, গুগল বা মাইক্রোসফ্ট - এর মতো টেক জায়ান্টস সহ যে কোনও সফ্টওয়্যার সংস্থার সম্পর্কে একটি সাক্ষাত্কারের জন্য ভালভাবে প্রস্তুত করবে ।

আপনার জন্য শুভকামনা!

অনুবাদ:
অনুবাদ অগ্রগতি:

##এটা কি?

Coding at the whiteboard - from HBO's Silicon Valley

কোনও বড় প্রতিষ্ঠানের সফটওয়্যার ইঞ্জিনিয়ারের কাছে ওয়েব বিকাশকারী (স্ব-শিক্ষিত, কোনও সিএস ডিগ্রি) থেকে যাওয়ার জন্য এটি আমার বহু মাসের অধ্যয়ন পরিকল্পনা।

অপরিহার্যঃ

  • কোডিং নিয়ে একটু অভিজ্ঞতা (variables, loops, methods/functions, etc)
  • ধৈর্য
  • সময়

এটা সফ্টওয়্যার ইঞ্জিনিয়ারিং এর জন্য অধ্যয়ন পরিকল্পনা, ওয়েব ডেভেলপমেন্টের জন্য নয়। বড় সফটওয়্যার কোম্পানি যেমন গুগল, অ্যামাজন, ফেসবুক এবং মাইক্রোসফট সফটওয়্যার ইঞ্জিনিয়ারিংকে ওয়েব ডেভেলপমেন্ট থেকে আলাদা বলে মনে করে। উদাহরণস্বরূপ, অ্যামাজন আছে ফ্রন্টেন্ড ইঞ্জিনিয়ার্স (FEE) এবং সফটওয়্যার ডেভেলপমেন্ট ইঞ্জিনিয়ার্স (SDE)। এই দুটি পৃথক পদ এবং তার জন্য সাক্ষাৎকার তারা একই হবে না, প্রত্যেকের নিজস্ব দক্ষতা আছে। এই কোম্পানিগুলো চায় কম্পিউটার বিজ্ঞান জ্ঞান সফ্টওয়্যার ডেভেলপমেন্ট/ইঞ্জিনিয়ারিং পদের জন্য।


সুচিপত্র

পাঠ পরিকল্পনা

অধ্যয়নের বিষয়

----------------এই পয়েন্টের নীচে থাকা সমস্ত কিছুই ঐচ্ছিক----------------

অতিরিক্ত সংস্থান

-অতিরিক্ত বই -অতিরিক্ত শিক্ষা -সংকলক -ইম্যাকস এবং ভিআই (এম) -ইউনিক্স কমান্ড লাইন সরঞ্জাম -তথ্য তত্ত্ব -সমতা এবং হামিং কোড -এন্ট্রপি -ক্রিপ্টোগ্রাফি -সংক্ষেপণ -কম্পিউটার সুরক্ষা -আবর্জনা সংগ্রহ -সমান্তরাল প্রোগ্রামিং -মেসেজিং, সিরিয়ালাইজেশন, এবং কুইউিং সিস্টেম -এ * -ফাস্ট ফুরিয়ার ট্রান্সফর্ম -ব্লুম ফিল্টার -হাইপারলগলগ -স্থানীয়তা-সংবেদনশীল হ্যাশিং -ভ্যান এমডে বোস ট্রি -অগমেন্টেড ডেটা স্ট্রাকচার -ভারসাম্যযুক্ত অনুসন্ধান গাছ -এভিএল গাছ -গাছ স্প্লে -লাল / কালো গাছ -2-3 অনুসন্ধান গাছ -২-৩- টি গাছ (ওরফ ২- টি গাছ) -এন-আরি (কে-আরি, এম-আরি) গাছ -বি-ট্রি -কেডি গাছ -তালিকাগুলি বাদ দিন -নেটওয়ার্ক প্রবাহ -বিচ্ছিন্ন সেট এবং ইউনিয়ন সন্ধান করুন -দ্রুত প্রক্রিয়াকরণের জন্য গণিত -ট্রিপ -লিনিয়ার প্রোগ্রামিং -জ্যামিতি, উত্তল হাল -স্বতন্ত্র গণিত -মেশিন লার্নিং -কয়েকটি বিষয়ে অতিরিক্ত বিশদ বিবরণ -ভিডিও সিরিজ -কম্পিউটার বিজ্ঞান কোর্স -কাগজপত্র


কেন এটি ব্যবহার করবেন?

আপনি যদি একটি বড় কোম্পানির সফটওয়্যার ইঞ্জিনিয়ার হিসেবে কাজ করতে চান, তাহলে এই বিষয়গুলো আপনাকে জানতে হবে।

আপনি যদি কম্পিউটার সায়েন্সে ডিগ্রী পেতে মিস করেন, যেমন আমি করেছি, এটি আপনাকে ধরবে এবং আপনার জীবনের চার বছর বাঁচাবে।

যখন আমি এই প্রকল্পটি শুরু করি, তখন আমি একটি স্তূপ থেকে একটি স্ট্যাক জানতাম না, বিগ-ও কিছুই জানতাম না, বা গাছ সম্পর্কে কিছু জানতাম না, বা কীভাবে একটি গ্রাফ অতিক্রম. যদি আমাকে একটি সাজানোর অ্যালগরিদম কোড করতে হয়, আমি আপনাকে বলতে পারি এটি ভয়ানক হত। আমার ব্যবহৃত প্রতিটি ডেটা স্ট্রাকচার ভাষাতে তৈরি করা হয়েছিল এবংআমাকে কখনই মেমরি ম্যানেজ করতে হয়নি যদি না আমি যে প্রক্রিয়াটি চালাচ্ছি তা একটি "আউট অফ মেমরি" ইরর দেয়, এবং তারপর আমাকে একটি সমাধান খুঁজে বের করতে হবে। আমি আমার জীবনে কয়েকটি বহুমাত্রিক অ্যারে ব্যবহার করেছি এবং হাজার হাজার সহযোগী অ্যারে, কিন্তু আমি স্ক্র্যাচ থেকে ডেটা স্ট্রাকচার তৈরি করিনি।

এটা একটা দীর্ঘ পরিকল্পনা। এটা আপনার মাস লাগতে পারে. আপনি যদি ইতিমধ্যে এটির অনেক কিছুর সাথে পরিচিত হন তবে এটি আপনার অনেক কম সময় লাগবে।

এটি কিভাবে ব্যবহার করতে

নীচের সমস্ত কিছুই একটি রূপরেখা এবং আপনার আইটেমগুলি উপরের থেকে নীচে পর্যন্ত অধ্যবসায় করা উচিত।

অগ্রগতি পরীক্ষা করার জন্য কার্য তালিকা সহ আমি গিটহাবের বিশেষ মার্কডাউন ব্যবহার করছি।

যদি আপনি গিট ব্যবহার করতে না চান

এই পৃষ্ঠায়, উপরের দিকের কোড বোতামে ক্লিক করুন, তারপর "Download ZIP" এ ক্লিক করুন। ফাইলটি আনজিপ করুন এবং আপনি পাঠ্য ফাইলগুলির সাথে কাজ করতে পারেন।

আপনি যদি মার্কডাউন বোঝে এমন একটি কোড এডিটরে খোলা থাকেন, তাহলে আপনি সবকিছু সুন্দরভাবে ফরম্যাট করা দেখতে পাবেন।

কিভাবে একটি জিপ ফাইল হিসাবে রেপো ডাউনলোড করবেন

যদি আপনি গিট ব্যবহার করতে চান

  1. গিটহাব রেপো ফোর্ক করুনঃ https://github.com/jwasham/coding-interview-university by clicking on the Fork button.

    গিটহাব রেপো ফোর্ক করুন

  2. আপনার লোকাল রেপোতে ক্লোন করুনঃ

    git clone git@github.com:<your_github_username>/coding-interview-university.git
    cd coding-interview-university
    git checkout -b progress
    git remote add jwasham https://github.com/jwasham/coding-interview-university
    git fetch --all
    
  3. আপনি আপনার পরিবর্তনগুলি সম্পূর্ণ করার পরে X দিয়ে সমস্ত বাক্স চিহ্নিত করুনঃ

    git add .
    git commit -m "Marked x"
    git rebase jwasham/main
    git push --set-upstream origin progress
    git push --force
    

মনে হয় না আপনি যথেষ্ট স্মার্ট নন

-সফল সফ্টওয়্যার ইঞ্জিনিয়াররা স্মার্ট, তবে অনেকেরই এমন নিরাপত্তাহীনতা রয়েছে যে তারা যথেষ্ট স্মার্ট নয়।

ভিডিও সংস্থান সম্পর্কে

কিছু ভিডিও শুধুমাত্র একটি Coursera বা EdX ক্লাসে ভর্তির মাধ্যমে পাওয়া যায়। এগুলোকে MOOC বলা হয়। কখনও কখনও ক্লাস সেশনে থাকে না তাই আপনাকে কয়েক মাস অপেক্ষা করতে হবে, তাই আপনার অ্যাক্সেস নেই।

বিনামূল্যে এবং সর্বদা উপলব্ধ পাবলিক সোর্স দিয়ে অনলাইন কোর্সের সংস্থানগুলি প্রতিস্থাপন করা দুর্দান্ত হবে, যেমন ইউটিউব ভিডিও (বিশেষত ইউনিভার্সিটির বক্তৃতা), যাতে আপনি যেকোন সময় এগুলি অধ্যয়ন করতে পারেন, শুধুমাত্র যখন একটি নির্দিষ্ট অনলাইন কোর্স সেশনে থাকে তখন নয়।

একটি প্রোগ্রামিং ভাষা চয়ন করুন

কোডিং ইন্টারভিউয়ের জন্য আপনাকে একটি প্রোগ্রামিং ভাষা বেছে নিতে হবে, তবে আপনাকে এমন একটি ভাষা খুঁজে বের করতে হবে যা আপনি কম্পিউটার বিজ্ঞানের ধারণাগুলি অধ্যয়ন করতে ব্যবহার করতে পারেন।

পছন্দের ভাষা একই হবে, যাতে আপনাকে শুধুমাত্র একটিতে দক্ষ হতে হবে।

এই স্টাডি প্ল্যানের জন্য

যখন আমি অধ্যয়নের পরিকল্পনাটি করেছি, তখন আমি এর বেশিরভাগের জন্য 2টি ভাষা ব্যবহার করেছি: সি এবং পাইথন

  • সি: খুব নিম্ন স্তরের। আপনাকে পয়েন্টার এবং মেমরি বরাদ্দ/বরাদ্দকরণের সাথে মোকাবিলা করার অনুমতি দেয়, যাতে আপনি ডেটা স্ট্রাকচার এবং অ্যালগরিদম খুব দৃঢ়ভাবে বুঝতে পারেন। পাইথন বা জাভার মতো উচ্চ স্তরের ভাষাগুলিতে, এগুলি আপনার কাছ থেকে লুকানো থাকে। প্রতিদিনের কাজে, এটি দুর্দান্ত, কিন্তু যখন আপনি এই নিম্ন-স্তরের ডেটা স্ট্রাকচারগুলি কীভাবে তৈরি করা হয় তা শিখছেন, তখন ধাতুর কাছাকাছি অনুভব করা দুর্দান্ত।
    • সি সর্বত্র। আপনি যখন অধ্যয়ন করছেন তখন আপনি বই, বক্তৃতা, ভিডিও, সব জায়গায় উদাহরণ দেখতে পাবেন।
    • The C Programming Language, Vol 2
      • এটি একটি সংক্ষিপ্ত বই, তবে এটি আপনাকে সি ভাষার উপর একটি দুর্দান্ত হ্যান্ডেল দেবে এবং আপনি যদি এটি একটু অনুশীলন করেন আপনি দ্রুত দক্ষ হয়ে উঠবেন। C বোঝা আপনাকে প্রোগ্রাম এবং মেমরি কিভাবে কাজ করে তা বুঝতে সাহায্য করে।
      • আপনাকে বইটির গভীরে যেতে হবে না (বা এমনকি এটি শেষ করতে হবে)। যেখানে আপনি সি-তে পড়তে এবং লিখতে স্বাচ্ছন্দ্যবোধ করেন সেখানে যান।
      • বইয়ের প্রশ্নের উত্তর
  • পাইথন: আধুনিক এবং খুব অভিব্যক্তিপূর্ণ, আমি এটি শিখেছি কারণ এটি খুব দরকারী এবং আমাকে একটি সাক্ষাত্কারে কম কোড লেখার অনুমতি দেয়।

এই আমার পছন্দ। আপনি অবশ্যই যা পছন্দ করেন তাই করেন।

আপনার এটির প্রয়োজন নাও হতে পারে, তবে একটি নতুন ভাষা শেখার জন্য এখানে কিছু সাইট রয়েছে:

আপনার কোডিং সাক্ষাত্কারের জন্য

সাক্ষাত্কারের কোডিং অংশটি করতে আপনি স্বাচ্ছন্দ্যযুক্ত একটি ভাষা ব্যবহার করতে পারেন তবে বড় কোম্পানি গুলির জন্য এগুলি কঠোর পছন্দ:

  • সি ++
  • জাভা
  • পাইথন

আপনি এগুলি ব্যবহার করতে পারেন তবে প্রথমে পড়তে পারেন। সতর্কতা থাকতে পারে:

  • জাভাস্ক্রিপ্ট
  • রুবি

এখানে একটি নিবন্ধটি আমি সাক্ষাত্কারের জন্য একটি ভাষা বেছে নেওয়ার বিষয়ে লিখেছি: কোডিং সাক্ষাত্কারের জন্য একটি ভাষা বেছে নিন এই মূল নিবন্ধটি আমার পোস্টের উপর ভিত্তি করে ছিল: সাক্ষাৎকারের জন্য একটি প্রোগ্রামিং ভাষা নির্বাচন করা

আপনার ভাষায় খুব স্বাচ্ছন্দ্য বোধ করা এবং বুদ্ধিমান হওয়া দরকার।

পছন্দ সম্পর্কে আরও পড়ুন:

ভাষা ভিত্তিক উৎসগুলো দেখুন

ডেটা স্ট্রাকচার এবং অ্যালগরিদমের জন্য বই

এই বইটি কম্পিউটার বিজ্ঞানের জন্য আপনার ভিত্তি তৈরি করবে।

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

সি

পাইথন

জাভা

আপনার পছন্দ:

সি++

আপনার পছন্দ:

সাক্ষাত্কার প্রস্তুতি বই

আপনি এই একটি গুচ্ছ কিনতে হবে না. সত্যি বলতে "Cracking the Coding Interview" সম্ভবত যথেষ্ট, কিন্তু আমি নিজেকে আরো অনুশীলন দিতে আরো কেনা. কিন্তু আমি সবসময় খুব বেশি করি।

আমি এই দুটি কিনলাম। তারা আমাকে প্রচুর অনুশীলন দিয়েছে।

  • Programming Interviews Exposed: Coding Your Way Through the Interview, 4th Edition
    • উত্তরগুলো সি++ আর জাভাতে
    • কোডিং ইন্টারভিউ ক্র্যাক করার জন্য এটি একটি ভাল ওয়ার্ম-আপ
    • খুব কঠিন না। আপনি একটি সাক্ষাত্কারে যা দেখতে পাবেন তার চেয়ে বেশিরভাগ সমস্যা সহজ হতে পারে (আমি যা পড়েছি তা থেকে)
  • Cracking the Coding Interview, 6th Edition
    • উত্তরগুলো জাভাতে

আপনার যদি অতিরিক্ত সময় থাকে:

একটি পছন্দ করুন:

আমার মত ভুল করবেন না

এই তালিকাটি অনেক মাস ধরে বেড়েছে, এবং হ্যাঁ, এটি হাতের বাইরে চলে গেছে।

এখানে আমি কিছু ভুল করেছি যাতে আপনার আরও ভালো অভিজ্ঞতা হয়। এবং আপনি কয়েক মাস সময় বাঁচাবেন।

1. আপনি সব মনে রাখবেন না

আমি ঘন্টার পর ঘন্টা ভিডিও দেখেছি এবং প্রচুর নোট নিয়েছি, এবং কয়েক মাস পরেও অনেক কিছু মনে ছিল না। আমার ৩ দিন লেগেছে আমার নোট এবং ফ্ল্যাশকার্ড তৈরি করতে, যাতে আমি পর্যালোচনা করতে পারি। আমার সেই সমস্ত জ্ঞানের প্রয়োজন ছিল না।

অনুগ্রহ করে পড়ুন যাতে আপনি আমার ভুল করবেন না:

Retaining Computer Science Knowledge.

###সি ++

সি ++

আমি এই দুটি পড়িনি, তবে সেডজেউইক দ্বারা তারা উচ্চ মানের এবং রচিত। সে দুর্দান্ত।

আপনার যদি সি ++ এর জন্য আরও ভাল প্রস্তাবনা থাকে তবে দয়া করে আমাকে জানান। একটি বিস্তৃত রিসোর্স খুঁজছি।

###জাভা

জাভা

বা:

  • [জাভাতে ডেটা স্ট্রাকচারস এবং অ্যালগরিদম] (https://www.amazon.com/Data-Structures-Algorithms-Michael-গুডরিচ/dp/1118771338/) -গুডরিচ, তমাসিয়া, গোল্ডওয়াসার দ্বারা -ইউসি বার্কলে সিএস ইন্ট্রো কোর্সের জন্য textচ্ছিক পাঠ্য হিসাবে ব্যবহৃত -নীচে পাইথন সংস্করণে আমার বইয়ের প্রতিবেদনটি দেখুন। এই বইটিতে একই বিষয় রয়েছে।

###পাইথন

পাইথন

##আপনি শুরু করার আগে

এই তালিকাটি কয়েক মাস ধরে বেড়েছে, এবং হ্যাঁ, এটি একধরণের হাতছাড়া হয়ে যায়।

এখানে আমি কিছু ভুল করেছি যাতে আপনার আরও ভাল অভিজ্ঞতা হয়।

###1. আপনি সব মনে রাখবেন না

আমি কয়েক ঘন্টা ভিডিও দেখেছি এবং প্রচুর নোট নিয়েছি এবং কয়েক মাস পরে এমন অনেক কিছুই ছিল যা আমি মনে করি না। আমি যেতে 3 দিন কাটিয়েছি আমার নোটগুলি এবং ফ্ল্যাশকার্ডগুলি তৈরি করে যাতে আমি পর্যালোচনা করতে পারি।

দয়া করে পড়ুন যাতে আপনি আমার ভুল করবেন না:

[কম্পিউটার বিজ্ঞান জ্ঞান পুনরুদ্ধার করা] (https://startupnextdoor.com/retaining-computer-s विज्ञान-জ্ঞান /)

###2. ফ্ল্যাশকার্ড ব্যবহার করুন

সমস্যা সমাধানের জন্য, আমি একটি সামান্য ফ্ল্যাশকার্ডস সাইট তৈরি করেছি যেখানে আমি 2 ধরণের ফ্ল্যাশকার্ড যুক্ত করতে পারি: সাধারণ এবং কোড। প্রতিটি কার্ডের আলাদা বিন্যাস রয়েছে।

আমি একটি মোবাইল প্রথম ওয়েবসাইট তৈরি করেছি যাতে আমি যেখানেই থাকি না কেন আমার ফোন এবং ট্যাবলেটে পর্যালোচনা করতে পারি।

বিনামূল্যে নিজের তৈরি করুন:

-[ফ্ল্যাশকার্ডস সাইটের রেপো] (https://github.com/jwasham/computer-science-flash-cards) -[আমার ফ্ল্যাশ কার্ডের ডাটাবেস (পুরাতন-1200 কার্ড)] (https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham.db): -[আমার ফ্ল্যাশ কার্ডের ডাটাবেস (নতুন-1800 কার্ড)] (https://github.com/jwasham/computer-science-flash-cards/blob/main/cards-jwasham-extreme.db):

মনে রাখবেন আমি ওভারবোর্ডে গিয়েছিলাম এবং সমাবেশগুলির ভাষা এবং পাইথন ট্রিভিয়া থেকে শুরু করে মেশিন লার্নিং এবং পরিসংখ্যানের সমস্ত কিছুর জন্য কার্ড রয়েছে। যা প্রয়োজন তার জন্য এটি অনেক বেশি।

** ফ্ল্যাশকার্ডগুলিতে দ্রষ্টব্য: ** আপনি যখন প্রথমবার উত্তরটি জানেন তখন তা চিহ্নিত হিসাবে চিহ্নিত করবেন না। আপনাকে দেখতে হবে একই কার্ড এবং এটি জেনে রাখার আগে বেশ কয়েকবার সঠিক উত্তর দিন। পুনরাবৃত্তি সেই জ্ঞানকে আরও গভীর করে দেবে আপনার মস্তিষ্ক.

আমার ফ্ল্যাশকার্ড সাইটটি ব্যবহার করার বিকল্প হ'ল [আনকি] (http://ankisrs.net/), যা আমার কাছে বহুবার প্রস্তাবিত হয়েছিল। এটি আপনাকে মনে রাখতে সহায়তা করার জন্য একটি পুনরাবৃত্তি সিস্টেম ব্যবহার করে। এটি ব্যবহারকারী-বান্ধব, সমস্ত প্ল্যাটফর্মে উপলব্ধ এবং একটি ক্লাউড সিঙ্ক সিস্টেম রয়েছে। আইওএসে এটির দাম 25 ডলার তবে অন্যান্য প্ল্যাটফর্মগুলিতে বিনামূল্যে।

আনকি ফর্ম্যাটে আমার ফ্ল্যাশকার্ড ডাটাবেস: https://ankiweb.net/shared/info/25173560 (ধন্যবাদ [@ এক্সভিউনিয়া] (https://github.com/xiewenya))

###3. পর্যালোচনা, পর্যালোচনা, পর্যালোচনা

আমি ASCII, ওএসআই স্ট্যাক, বিগ-ও স্বরলিপিগুলি এবং আরও অনেক কিছুতে চিট শীটের একটি সেট রাখি। আমার কিছুটা বাজে সময় পেলে আমি সেগুলি অধ্যয়ন করি।

আধা ঘন্টার জন্য প্রোগ্রামিং সমস্যা থেকে বিরতি নিন এবং আপনার ফ্ল্যাশকার্ডগুলি দিয়ে যান।

###4. ফোকাস করুন

অনেকগুলি বিভ্রান্তি রয়েছে যা মূল্যবান সময় নিতে পারে। ফোকাস এবং ঘনত্ব শক্ত।

##আপনি কি কভার দেখতে পাবেন না

এগুলি প্রচলিত প্রযুক্তি তবে এই অধ্যয়ন পরিকল্পনার অংশ নয়:

-এসকিউএল -জাভাস্ক্রিপ্ট -এইচটিএমএল, সিএসএস এবং অন্যান্য ফ্রন্ট-এন্ড প্রযুক্তি

##দৈনিক পরিকল্পনা

কিছু বিষয় একদিন নেয়, এবং কিছুতে একাধিক দিন সময় লাগবে। কিছু বাস্তবায়নের কিছুই না দিয়ে কেবল শিখছে।

প্রতিদিন আমি নীচের তালিকা থেকে একটি বিষয় নিয়ে যাই, সেই বিষয় সম্পর্কে ভিডিও দেখি এবং একটি বাস্তবায়ন এখানে লিখি: -সি-স্ট্রাকস এবং ফাংশনগুলি ব্যবহার করে যা স্ট্রাক * এবং আরজ হিসাবে অন্য কোনও কিছু নেয়। -সি ++-অন্তর্নির্মিত প্রকারগুলি ব্যবহার না করে -সি ++-অন্তর্নির্মিত প্রকারগুলি যেমন STL এর std :: লিঙ্কযুক্ত তালিকার জন্য তালিকা ব্যবহার করে -পাইথন-অন্তর্নির্মিত প্রকারগুলি (পাইথনের অনুশীলন চালিয়ে যেতে) ব্যবহার করে -এবং আমি এটি সঠিকভাবে করছি তা নিশ্চিত করার জন্য পরীক্ষাগুলি লিখুন, কখনও কখনও কেবল সাধারণ দাবী () বিবৃতি ব্যবহার করে -আপনি জাভা বা অন্য কিছু করতে পারেন, এটি কেবল আমার জিনিস।

আপনার এসবের দরকার নেই। আপনার কেবলমাত্র [সাক্ষাত্কারের জন্য একটি ভাষা] প্রয়োজন (#সাক্ষাত্কারের জন্য এক-ভাষা বেছে নিন)।

এই সবগুলিতে কোড কেন? -অনুশীলন করুন, অনুশীলন করুন, অনুশীলন করুন, যতক্ষণ না আমি এতে অসুস্থ না হয়ে থাকি এবং কোনও সমস্যা ছাড়াই এটি করতে পারি (কারও কারও কাছে অনেক প্রান্তের কেস এবং স্মরণে রাখার জন্য বইয়ের বিবরণ রয়েছে) -কাঁচা সীমাবদ্ধতার মধ্যে কাজ করুন (আবর্জনা সংগ্রহের সহায়তা ছাড়াই মেমরি বরাদ্দ / মুক্তকরণ (পাইথন বা জাভা বাদে)) -অন্তর্নির্মিত ধরণের ব্যবহার করুন যাতে বাস্তব-বিশ্বের ব্যবহারের জন্য অন্তর্নির্মিত সরঞ্জামগুলি ব্যবহার করার অভিজ্ঞতা আমার রয়েছে (উত্পাদনে আমার নিজের লিঙ্কযুক্ত তালিকার প্রয়োগটি লিখতে যাবেন না)

আমার প্রতিটি বিষয়ের জন্য এগুলি করার জন্য সময় নাও থাকতে পারে তবে আমি চেষ্টা করব।

আপনি আমার কোডটি এখানে দেখতে পারেন: -[সি] (https://github.com/jwasham/pੈਕਟ-c) -[সি ++] (https://github.com/jwasham/pੈਕਟ-cpp) -[পাইথন] (https://github.com/jwasham/pੈਕਟ-python)

আপনার প্রতিটি অ্যালগরিদমের সাহস মুখস্থ করার দরকার নেই।

হোয়াইটবোর্ড বা কাগজে কোড লিখুন, কম্পিউটার নয়। কিছু নমুনা ইনপুট দিয়ে পরীক্ষা করুন। তারপরে এটি কম্পিউটারে পরীক্ষা করে দেখুন।

##পূর্বশর্ত জ্ঞান

<সংশ্লেষ> পূর্বশর্ত জ্ঞান << সংক্ষিপ্ত>
  • ** সি ** শিখুন -সি সর্বত্র আছে। আপনি অধ্যয়নরত অবস্থায় আপনি বই, বক্তৃতা, ভিডিও, * সর্বত্র * এর উদাহরণ দেখতে পাবেন।

    • [সি প্রোগ্রামিং ল্যাঙ্গুয়েজ, খণ্ড ২] (https://www.amazon.com/Programming-Language-ব্রায়ান-ডব্লিউ-কর্নিগান/dp/0131103628) -এটি একটি সংক্ষিপ্ত বই, তবে এটি আপনাকে সি ভাষায় দুর্দান্ত হ্যান্ডেল দেবে এবং যদি আপনি এটি কিছুটা অনুশীলন করেন আপনি দ্রুত দক্ষ হয়ে উঠবেন। সি বোঝা আপনাকে প্রোগ্রাম এবং মেমরি কীভাবে কাজ করে তা বুঝতে সহায়তা করে। -[প্রশ্নের উত্তর] (https://github.com/lekkas/c-algorithms)
  • ** কম্পিউটার কীভাবে কোনও প্রোগ্রাম প্রক্রিয়া করে: **

##অ্যালগরিদমিক জটিলতা / বিগ-ও / অ্যাসিপোটিক বিশ্লেষণ

<স্যুমারী> অ্যালগরিদমিক জটিলতা / বিগ-ও / অ্যাসিপটোটিক বিশ্লেষণ

-বাস্তবায়নের কিছুই নেই -এখানে প্রচুর ভিডিও রয়েছে। যতক্ষণ না আপনি এটি বুঝতে পারছেন ঠিক ততক্ষণ দেখুন। আপনি সর্বদা ফিরে এসে পর্যালোচনা করতে পারেন। -কিছু বক্তৃতা যদি খুব ম্যাথিক হয় তবে আপনি ব্যাকগ্রাউন্ডের জ্ঞান পেতে নীচে নেমে গিয়ে আলাদা গণিতের ভিডিওগুলি দেখতে পারেন।

##ডাটা স্ট্রাকচার

<সংশ্লেটি> ডেটা স্ট্রাকচার

-###অ্যারে -একটি স্বয়ংক্রিয় আকার পরিবর্তনকারী ভেক্টর প্রয়োগ করুন।

  • বিবরণ: -[অ্যারে (ভিডিও)] (https://www.coursera.org/learn/data-structures/ নির্বাচন //sBSF/arrays) -[ইউসি বার্কলে সিএস 61 বি-লিনিয়ার এবং মাল্টি-ডিম অ্যারে (ভিডিও)] (https://archive.org/details/ucberkeley_webcast_Wp8oiO_CZZE) (15m 32s থেকে দেখা শুরু করুন) -[ডাইনামিক অ্যারে (ভিডিও)] (https://www.coursera.org/learn/data-structures/lecture/EwbnV/dynamic-arrays) -[জেগড অ্যারে (ভিডিও)] (https://www.youtube.com/watch?v=1jtrQqYpt7g)
  • একটি ভেক্টর প্রয়োগ করুন (স্বয়ংক্রিয় আকার পুনরায় আকারের সাথে পরিবর্তনীয় অ্যারে):
    • অ্যারে এবং পয়েন্টার ব্যবহার করে কোডিং অনুশীলন করুন, এবং সূচক ব্যবহারের পরিবর্তে সূচীতে ঝাঁপ দেওয়ার জন্য পয়েন্টার ম্যাথ th
    • বরাদ্দ মেমরি সহ নতুন কাঁচা ডেটা অ্যারে -হুডের অধীনে ইন অ্যারে বরাদ্দ করতে পারে, কেবল তার বৈশিষ্ট্যগুলি ব্যবহার করবেন না -16 দিয়ে শুরু করুন, বা যদি শুরুর সংখ্যাটি বেশি হয় তবে 2-16, 32, 64, 128 এর শক্তি ব্যবহার করুন
    • আকার ()-আইটেমের সংখ্যা
    • ক্ষমতা ()-এটি ধরে রাখতে পারে এমন আইটেমের সংখ্যা -খালি()
    • এ (সূচক)-প্রদত্ত সূচকে আইটেমটি ফেরত দেয়, সূচক সীমা ছাড়িয়ে গেলে ফুটিয়ে উঠে
    • ধাক্কা (আইটেম)
    • সন্নিবেশ (সূচক, আইটেম)-সূচীতে আইটেম সন্নিবেশ করায়, সূচকের মান এবং পিছনের উপাদানগুলি ডানদিকে সরিয়ে দেয়
    • প্রিপেন্ড (আইটেম)-উপরে সূচক 0 এ সন্নিবেশ ব্যবহার করতে পারেন
    • পপ ()-শেষ থেকে সরান, ফেরতের মান
    • মুছুন (সূচী)-সূচি অনুসারে আইটেম মুছুন, সমস্ত অনুবর্তনীয় উপাদান বাম দিকে সরিয়ে
    • সরান (আইটেম)-মান সন্ধান করে এবং এটি ধরে রাখা সূচকটি সরিয়ে দেয় (এমনকি একাধিক জায়গায় থাকলেও)
    • সন্ধান করুন (আইটেম)-মানটির সন্ধান করে এবং সেই মানটির সাথে প্রথম সূচকটি প্রদান করে,-১ পাওয়া না গেলে
    • পুনরায় আকার দিন (নতুন_ক্ষমতা) // ব্যক্তিগত ফাংশন -যখন আপনি সক্ষমতা পৌঁছেছেন, আকার দ্বিগুণ করার জন্য পুনরায় আকার দিন -কোনও আইটেমটি পপ করার সময়, আকারটি যদি 1/4 ধারণক্ষমতা হয় তবে আকারটি অর্ধেক করুন
  • সময় -ও (1) শেষে অন্তর্ভুক্ত / অপসারণ (আরও স্থানের জন্য বরাদ্দের জন্য সূক্ষ্ম), সূচক বা আপডেট -ও (এন) অন্যত্র সন্নিবেশ / অপসারণ করতে
  • স্পেস -স্মৃতিতে সামঞ্জস্যপূর্ণ তাই নৈকট্য পারফরম্যান্সে সহায়তা করে -স্থান প্রয়োজন = (অ্যারে ক্ষমতা, যা> = এন) * আইটেমের আকার, তবে 2n হলেও এখনও হে (এন)

-###লিঙ্কযুক্ত তালিকাগুলি

  • বিবরণ:
  • [সি কোড (ভিডিও)] (https://www.youtube.com/watch?v=QN6FPiD0Gzo) -পুরো ভিডিও নয়, নোড স্ট্রাক্ট এবং মেমরির বরাদ্দ সম্পর্কে কেবল অংশ।
  • লিঙ্কযুক্ত তালিকা বনাম অ্যারে: -[কোর লিঙ্কযুক্ত তালিকা বনাম অ্যারেগুলি (ভিডিও)] (https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/rjBs9/core-linked-lists-vs-arrays) -[রিয়েল ওয়ার্ল্ডের লিঙ্কযুক্ত তালিকায় বনাম অ্যারেগুলি (ভিডিও)] (https://www.coursera.org/learn/data-structures-optimizing-performance/lecture/QUaUd/in-the-real-world-lists-vs-arrays)
  • [কেন আপনার লিঙ্কযুক্ত তালিকাগুলি (ভিডিও) এড়ানো উচিত]] (https://www.youtube.com/watch?v=YQs6IC-vgmo)
  • গোটচা: আপনার পয়েন্টার জ্ঞানের জন্য পয়েন্টার প্রয়োজন: (আপনি যখন কোনও ফাংশনটিতে কোনও পয়েন্টার পাস করেন যা ঠিকানা পরিবর্তন করতে পারে যেখানে সেই পয়েন্টারটি নির্দেশ করে) এই পৃষ্ঠাটি কেবল পিটিআর থেকে পিটিআর এ উপলব্ধি পেতে। আমি এই তালিকাটি ট্র্যাভার্সাল স্টাইলের প্রস্তাব দিই না। পড়ার যোগ্যতা এবং রক্ষণাবেক্ষণযোগ্যতা চতুরতার কারণে ভোগে। -[পয়েন্টারগুলিতে নির্দেশক] (https://www.eskimo.com/~scs/cclass/int/sx8.html)
  • বাস্তবায়ন করুন (আমি টেইল পয়েন্টার দিয়ে ও ছাড়াই করেছি):
    • আকার ()-তালিকায় ডাটা উপাদানগুলির সংখ্যা প্রদান করে
    • খালি ()-শূন্য হলে বুল সত্য দেয়
    • মান_আট (সূচক)-নবম আইটেমটির মান প্রদান করে (প্রথমটির জন্য 0 থেকে শুরু করে)
    • পুশ_ফ্রন্ট (মান)-তালিকার সামনের অংশে একটি আইটেম যুক্ত করে
    • পপ_ফ্রন্ট ()-সামনের আইটেমটি সরিয়ে তার মানটি ফিরিয়ে দিন
    • পুশ_ব্যাক (মান)-শেষে একটি আইটেম যুক্ত করে
    • পপ_ব্যাক ()-শেষ আইটেমটি সরিয়ে দেয় এবং এর মান প্রদান করে
    • সামনের ()-সামনের আইটেমটির মান পান
    • ফিরে ()-শেষ আইটেমটির মান পান
    • সন্নিবেশ (সূচক, মান)-সূচকে মূল্য সন্নিবেশ করানো হয়, সুতরাং সেই সূচীতে বর্তমান আইটেমটি সূচীতে নতুন আইটেম দ্বারা নির্দেশিত
    • মুছুন (সূচক)-প্রদত্ত সূচকে নোড সরান s
    • মান_ন_ফ্রম_েন্ড (এন)-তালিকার শেষে থেকে নবম অবস্থানে নোডের মান প্রদান করে
    • বিপরীত ()-তালিকার বিপরীতে
    • সরান_মূল্য (মান)-এই মান সহ তালিকার প্রথম আইটেমটি সরিয়ে দেয়
  • দ্বিগুণভাবে সংযুক্ত তালিকা -[বিবরণ (ভিডিও)] (https://www.coursera.org/learn/data-structures/lecture/jpGKD/doubly-linked-lists) -বাস্তবায়নের দরকার নেই

-###স্ট্যাক

-###কিউ

  • [সারি (ভিডিও)] (https://www.coursera.org/lecture/data-structures/queues-EShpq)
  • [বিজ্ঞপ্তি বাফার / ফিফো] (https://en.wikedia.org/wiki/Circular_buffer)
  • লেজ পয়েন্টার সহ লিঙ্কযুক্ত-তালিকা ব্যবহার করে প্রয়োগ করুন: -এনকুই (মান)-লেজের স্থানে মান যোগ করে -ডেকিউ ()-মান ফেরত দেয় এবং সর্বশেষে যুক্ত হওয়া উপাদান (সামনে) সরিয়ে দেয় -খালি ()
  • স্থির আকারের অ্যারে ব্যবহার করে প্রয়োগ করুন: -এনকুই (মান)-উপলব্ধ স্টোরেজ শেষে আইটেম যুক্ত করে -ডেকিউ ()-মান প্রদান করে এবং সম্প্রতি যুক্ত হওয়া উপাদানকে সরিয়ে দেয় -খালি () -সম্পূর্ণ()
  • খরচ: -লিঙ্কযুক্ত তালিকার সাহায্যে একটি খারাপ বাস্তবায়ন যেখানে আপনি মাথার দিকে tailুকিয়ে রাখুন এবং লেজটিতে শেরোনামটি হবে O (n) কারণ আপনার শেষ উপাদানটির পরেরটি দরকার, প্রতিটি ডেকিউকে পুরো ট্র্যাভারসাল সৃষ্টি করে -এনকুই: ও (1) (সূচিত, লিঙ্কযুক্ত তালিকা এবং অ্যারে [প্রোবিং]) -প্রামাণ্য: ও (1) (লিঙ্কযুক্ত তালিকা এবং অ্যারে) -খালি: O (1) (লিঙ্কযুক্ত তালিকা এবং অ্যারে)

-###হ্যাশ টেবিল

##আরও জ্ঞান

আরও জ্ঞান << সংক্ষিপ্ত>

-###বাইনারি অনুসন্ধান

-###বিটওয়াস অপারেশন

##গাছ

গাছ

-###গাছ-নোট ও পটভূমি

  • [সিরিজ: গাছ (ভিডিও)] (https://www.coursera.org/learn/data-structures/ নির্বাচন / 95qda/trees) -মৌলিক গাছ নির্মাণ -traversal -ম্যানিপুলেশন আলগোরিদিম
  • [বিএফএস (প্রস্থের প্রথম সন্ধান) এবং ডিএফএস (গভীরতা-প্রথম অনুসন্ধান) (ভিডিও)] (https://www.youtube.com/watch?v=uWL6FJhq5fM) -বিএফএস নোট: -স্তর আদেশ (বিএফএস, সারি ব্যবহার করে) -সময়ের জটিলতা: ও (এন) -স্থান জটিলতা: সেরা: O (1), সবচেয়ে খারাপ: O (n / 2) = O (n) -ডিএফএস নোট: -সময়ের জটিলতা: ও (এন) -স্থান জটিলতা: সেরা: ও (লগ এন)-গড়। গাছের উচ্চতা সবচেয়ে খারাপ: ও (এন) -অর্ডার (ডিএফএস: বাম, স্ব, ডান) -পোস্টর্ডার (ডিএফএস: বাম, ডান, স্ব) -প্রির্ডার (ডিএফএস: স্ব, বাম, ডান)

-###বাইনারি অনুসন্ধান গাছ: বিএসটি

-###গাদা / অগ্রাধিকার সারি / বাইনারি হিপ -গাছ হিসাবে ভিজ্যুয়ালাইজড, তবে সাধারণত সঞ্চয়স্থানে লিনিয়ার থাকে (অ্যারে, লিঙ্কযুক্ত তালিকা)

##শ্রেণীবিভাজন

বাছাইকরণ

-[ ] নোট: -প্রকারভেদ প্রয়োগ করুন এবং সর্বোত্তম কেস / নিকৃষ্টতম কেস, প্রত্যেকের গড় জটিলতা জানেন: -কোনও বুদ্বুদ বাছাই নয়-এটি ভয়ানক-হে (n ^ 2), যখন এন <= 16 বাদে

  • অ্যালগরিদম বাছাইয়ের স্থায়িত্ব ("কুইকসোর্ট স্থিতিশীল?") -[অ্যালগোরিদম স্থিতিশীলতা বাছাই করা হচ্ছে) (https://en.wikedia.org/wiki/Sorting_algorithm#Stability) -[অ্যালগরিদমগুলি বাছাইয়ে স্থিতিশীলতা] (http://stackoverflow.com/questions/1517793/stability-in-sorting-algorithms) -[অ্যালগোরিদম বাছাইয়ে স্থায়িত্ব] (http://www.geeksforgeeks.org/stability-in-sorting-algorithms/) -[অ্যালগরিদম বাছাই-স্থিতিশীলতা] (http://homepages.math.uic.edu/~leon/cs-mcs401-s08/handouts/stability.pdf)
  • লিঙ্কযুক্ত তালিকায় কোন অ্যালগরিদম ব্যবহার করা যেতে পারে? অ্যারেতে কোনটি? উভয় উপর? -আমি একটি লিঙ্কযুক্ত তালিকা বাছাইয়ের প্রস্তাব দেব না, তবে মার্জ সারণি করণীয়। -[লিঙ্কযুক্ত তালিকার জন্য বাছাই করুন মার্জ করুন] (http://www.geeksforgeeks.org/ নিমেষে-অনুসারে-লিঙ্কড-তালিকা /)

-হিপসোর্টের জন্য, উপরে হ্যাপের ডেটা কাঠামোটি দেখুন। হিপ সাজানো দুর্দান্ত তবে স্থিতিশীল নয়।

সংক্ষিপ্তসার হিসাবে, এখানে [১৫ টি বাছাই করা অ্যালগরিদম] (https://www.youtube.com/watch?v=kPRA0W1kECg) এর ভিজ্যুয়াল উপস্থাপনা রয়েছে। আপনার যদি এই বিষয়ে আরও বিশদ প্রয়োজন, [কিছু বিষয়ের উপর অতিরিক্ত বিশদ] এর "বাছাই করা" বিভাগটি দেখুন (কিছু বিষয়ে-কিছু-অতিরিক্ত-বিশদ)

##গ্রাফ

গ্রাফ

গ্রাফগুলি কম্পিউটার বিজ্ঞানের বিভিন্ন সমস্যার প্রতিনিধিত্ব করতে ব্যবহার করা যেতে পারে, তাই এই বিভাগটি দীর্ঘ, যেমন গাছ এবং বাছাইয়ের মতো ছিল।

-নোট: -মেমরিতে গ্রাফ উপস্থাপনের জন্য 4 টি প্রাথমিক উপায় রয়েছে: -বস্তু এবং পয়েন্টার -অন্তিক ম্যাট্রিক্স -সংলগ্ন তালিকা -সংলগ্ন মানচিত্র -প্রতিটি প্রতিনিধিত্ব এবং এর পক্ষে & কনস সঙ্গে নিজেকে পরিচিত -বিএফএস এবং ডিএফএস-তাদের কম্পিউটেশনাল জটিলতা, তাদের ট্রেডঅফস এবং কীভাবে এগুলিকে বাস্তব কোডে প্রয়োগ করতে হয় তা জানেন -যখন কোন প্রশ্ন জিজ্ঞাসা করা হয়, প্রথমে একটি গ্রাফ-ভিত্তিক সমাধান সন্ধান করুন, তারপরে কোনওটি না হলে এগিয়ে যান।

-সম্পূর্ণ কোর্সেরা কোর্স:

-আমি বাস্তবায়ন করব:

  • সংলগ্ন তালিকার সাথে ডিএফএস (পুনরাবৃত্ত)
  • সংলগ্ন তালিকার সাথে ডিএফএস (স্ট্যাক সহ পুনরাবৃত্ত)
  • সংলগ্ন ম্যাট্রিক্স সহ ডিএফএস (পুনরাবৃত্ত)
  • সংলগ্ন ম্যাট্রিক্স সহ ডিএফএস (স্ট্যাক সহ পুনরাবৃত্ত)
  • সংলগ্ন তালিকা সহ বিএফএস
  • সংলগ্ন ম্যাট্রিক্স সহ বিএফএস
  • একক উত্সের সংক্ষিপ্ততম পথ (ডিজকস্ট্র)
  • সর্বনিম্ন বিস্তৃত গাছ -ডিএফএস-ভিত্তিক অ্যালগরিদম (উপরে অ্যাডুনি ভিডিও দেখুন):
    • চক্র পরীক্ষা করুন (টপোলজিকাল সাজানোর জন্য প্রয়োজনীয়, যেহেতু আমরা শুরু করার আগে চক্রটি পরীক্ষা করব)
    • টপোলজিকাল সাজান
    • একটি গ্রাফে সংযুক্ত উপাদানগুলি গণনা করুন
    • দৃ strongly়ভাবে সংযুক্ত উপাদানগুলির তালিকা করুন
    • দ্বিপক্ষীয় গ্রাফ পরীক্ষা করুন

##আরও জ্ঞান

আরও জ্ঞান << সংক্ষিপ্ত>

-###পুনরাবৃত্তি

-###ডায়নামিক প্রোগ্রামিং -আপনি সম্ভবত আপনার সাক্ষাত্কারে কোনও গতিশীল প্রোগ্রামিং সমস্যা দেখতে পাবেন না, তবে ডায়নামিক প্রোগ্রামিংয়ের প্রার্থী হিসাবে কোনও সমস্যাটি স্বীকৃতি দেওয়ার পক্ষে এটি মূল্যবান। -এই বিষয়টি বেশ কঠিন হতে পারে, কারণ প্রতিটি ডিপি দ্রবণীয় সমস্যাটিকে অবশ্যই পুনরাবৃত্তির সম্পর্ক হিসাবে সংজ্ঞায়িত করা উচিত এবং এটির সাথে আসাটি জটিল হতে পারে। -আমি জড়িত প্যাটার্ন সম্পর্কে দৃ understanding় ধারণা না পাওয়া পর্যন্ত আমি ডিপি সমস্যার অনেক উদাহরণ দেখার পরামর্শ দিই।

-###অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং

-###নকশা নিদর্শন

-###সম্মিলক (n কে নির্বাচন করুন) এবং সম্ভাবনা

-###এনপি, এনপি-সম্পূর্ণ এবং আনুমানিক অ্যালগরিদম -এনপি-সম্পূর্ণ সমস্যার সর্বাধিক বিখ্যাত শ্রেণীর সম্পর্কে জানুন, যেমন ভ্রমণ ভ্রমণ এবং ন্যাপস্যাক সমস্যা, এবং যখন কোনও সাক্ষাত্কার আপনাকে ছদ্মবেশে জিজ্ঞাসা করে তখন সেগুলি সনাক্ত করতে সক্ষম হোন। -এনপি-সম্পূর্ণ অর্থ কী তা জানুন।

-###ক্যাচ

-###প্রক্রিয়া এবং থ্রেডস

  • কম্পিউটার বিজ্ঞান 162-অপারেটিং সিস্টেম (25 টি ভিডিও): -প্রক্রিয়া এবং থ্রেডগুলির জন্য ভিডিওগুলি 1-11 দেখুন -[অপারেটিং সিস্টেমস এবং সিস্টেম প্রোগ্রামিং (ভিডিও)] (https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c) -[প্রক্রিয়া এবং একটি থ্রেডের মধ্যে পার্থক্য কী?] (Https://www.quora.com/What-is-the-differences-between-a-process-and-a-thread) -কভার: -প্রক্রিয়াগুলি, থ্রেডগুলি, সমঝোতার বিষয়গুলি -প্রক্রিয়া এবং থ্রেড মধ্যে পার্থক্য -প্রক্রিয়া -থ্রেড -তালা -মিটেক্সেস -semaphores -মনিটর -তারা কীভাবে কাজ করে -অচলাবস্থা -লাইভলক -সিপিইউ ক্রিয়াকলাপ, বাধা, প্রসঙ্গের স্যুইচিং -মাল্টিকোর প্রসেসরগুলির সাথে আধুনিক একত্রীকরণ -[পেজিং, বিভাগকরণ এবং ভার্চুয়াল মেমোরি (ভিডিও)] (https://www.youtube.com/watch?v=LKe7xK0bF7o&list=PLCiOXwirraUCBE9i_ukL8_Kfg6XNv7Se8&index=2) -[বাধা (ভিডিও)] (https://www.youtube.com/watch?v=uFKi2-J-6II&list=PLCiOXwirraUCBE9i_ukL8_Kfg6XNv7Se8&index=3) -[শিডিং (ভিডিও)] (https://www.youtube.com/watch?v=-Gu5mYdKbu4&index=4&list=PLCiOXwirraUCBE9i_ukL8_Kfg6XNv7Se8) -প্রক্রিয়া সংস্থান প্রয়োজন (মেমরি: কোড, স্ট্যাটিক স্টোরেজ, স্ট্যাক, গাদা, এবং ফাইল বিবরণকারী, i / o) -থ্রেড রিসোর্সের প্রয়োজন (একই প্রক্রিয়ায় অন্যান্য থ্রেডের সাথে উপরের (বিয়োগ স্ট্যাক) তবে প্রতিটিটির নিজস্ব পিসি, স্ট্যাক কাউন্টার, রেজিস্টার এবং স্ট্যাক রয়েছে) -নতুন প্রক্রিয়া মেমরিটিতে লেখার আগ পর্যন্ত ফোর্কিং সত্যই লেখার অনুলিপি (কেবল পঠনযোগ্য) হয়, তবে এটি একটি সম্পূর্ণ অনুলিপি করে। -প্রসঙ্গে স্যুইচিং -কীভাবে প্রসঙ্গের স্যুইচিং অপারেটিং সিস্টেম এবং অন্তর্নিহিত হার্ডওয়্যার দ্বারা শুরু করা হয়
  • [সি ++ (সিরিজ-10 টি ভিডিও) এর থ্রেড]] (https://www.youtube.com/playlist?list=PL5jc9xFGsL8E12so1wlMS0r0hTQoJL74M)
  • পাইথনে সম্মতি (ভিডিও):

-###পরীক্ষামূলক -ঢাকতে: -ইউনিট টেস্টিং কীভাবে কাজ করে -মক অবজেক্টস কী -সংহতকরণ পরীক্ষা কি -নির্ভরতা ইনজেকশন কি

-###তফসিল -কোনও ওএসে, এটি কীভাবে কাজ করে -অপারেটিং সিস্টেমের ভিডিওগুলি থেকে সংগ্রহ করা যায়

-###স্ট্রিং অনুসন্ধান এবং ম্যানিপুলেশনগুলি

আপনার যদি এই বিষয়ে আরও বিশদ প্রয়োজন, [কিছু বিষয়ের উপর অতিরিক্ত বিবরণ] "স্ট্রিং ম্যাচিং" বিভাগটি দেখুন (কিছু-বিষয়ে-কিছু-অতিরিক্ত)

-###চেষ্টা -নোট করুন বিভিন্ন ধরণের চেষ্টা আছে। কারও কারও কাছে উপসর্গ আছে, কারও কাছে কিছু নেই, আবার কিছু বিটের পরিবর্তে স্ট্রিং ব্যবহার করে পথ ট্র্যাক। -আমি কোডের মাধ্যমে পড়েছি, তবে বাস্তবায়ন করব না।

-###ভাসমান পয়েন্ট নম্বর

  • সাধারণ 8-বিট: [ভাসমান পয়েন্ট সংখ্যাগুলির প্রতিনিধিত্ব-1 (ভিডিও-গণনায় একটি ত্রুটি রয়েছে-ভিডিও বর্ণনা দেখুন)] (https://www.youtube.com/watch?v=ji3SfClm8TU)
  • 32 বিট: [আইইইই 7575 32-বিট ভাসমান পয়েন্ট বাইনারি (ভিডিও)] (https://www.youtube.com/watch?v=50ZYcZebIec)

-###ইউনিকোড

  • [সর্বনিম্ন ন্যূনতম প্রতিটি সফ্টওয়্যার বিকাশকারী অবশ্যই, ইউনিকোড এবং চরিত্রের সেট সম্পর্কে ইতিবাচকভাবে অবশ্যই জানতে হবে] (http://www.joelonsoftware.com/articles/Unicode.html)
  • [প্রতিটি প্রোগ্রামার একেবারে নিখুঁতভাবে, এনকোডিংগুলি এবং পাঠ্যের সাথে কাজ করার জন্য চরিত্রের সেটগুলি সম্পর্কে ইতিবাচক প্রয়োজন] [http://kunststube.net/encoding/)

-###শেষ

-###নেটওয়ার্কিং -** আপনার যদি নেটওয়ার্কিংয়ের অভিজ্ঞতা থাকে বা কোনও নির্ভরযোগ্যতা প্রকৌশলী বা অপারেশন ইঞ্জিনিয়ার হতে চান তবে প্রশ্নগুলি আশা করুন ** -অন্যথায়, এটি জেনে রাখা ভাল

##সিস্টেম ডিজাইন, স্কেলিবিলিটি, ডেটা হ্যান্ডলিং

<সুমারী> সিস্টেম ডিজাইন, স্কেলাবিলিটি, ডেটা হ্যান্ডলিং

** আপনার 4+ বছরের অভিজ্ঞতা থাকলে আপনি সিস্টেম ডিজাইন প্রশ্নগুলি আশা করতে পারেন *

-স্কেলাবিলিটি এবং সিস্টেম ডিজাইন অনেকগুলি বিষয় এবং সংস্থান সহ অনেক বড় বিষয় since এমন একটি সফ্টওয়্যার / হার্ডওয়্যার সিস্টেম ডিজাইন করার সময় বিবেচনা করার মতো অনেক কিছুই রয়েছে যা স্কেল করতে পারে। এটিতে বেশ কিছুটা সময় ব্যয় করার প্রত্যাশা করুন। -বিবেচনা: -স্কেলিবিলিটি -একক মানগুলিতে বড় ডেটা সেট স্থাপন করুন -একটি ডেটা সেট করে অন্যটিতে রূপান্তর করুন -অশ্লীলভাবে প্রচুর পরিমাণে ডেটা পরিচালনা করা -ব্যবস্থা পরিকল্পনা -বৈশিষ্ট্য সেট -ইন্টারফেস -শ্রেণি শ্রেণিবিন্যাস -নির্দিষ্ট সীমাবদ্ধতার অধীনে একটি সিস্টেম ডিজাইন করা -সরলতা এবং দৃust়তা -বাণিজ্য -কর্মক্ষমতা বিশ্লেষণ এবং অপ্টিমাইজেশন


##চূড়ান্ত পর্যালোচনা

চূড়ান্ত পর্যালোচনা
এই বিভাগে সংক্ষিপ্ত ভিডিও থাকবে যা আপনি বেশিরভাগ গুরুত্বপূর্ণ ধারণাটি পর্যালোচনা করতে খুব দ্রুত দেখতে পারেন।
আপনি প্রায়শই একটি রিফ্রেশার চাইলে এটি দুর্দান্ত।

##কোডিং প্রশ্ন অনুশীলন

<সংশ্লেষ> কোডিং প্রশ্ন অনুশীলন << সংক্ষিপ্ত>

আপনি যেহেতু উপরের সমস্ত কম্পিউটার বিজ্ঞানের বিষয়গুলি জানেন, এখন কোডিং সমস্যার উত্তর দেওয়ার অনুশীলন করার সময় এসেছে।

** কোডিং প্রশ্ন অনুশীলন প্রোগ্রামিং সমস্যার উত্তর মুখস্থ করার বিষয়ে নয় * **

আপনার প্রোগ্রামিং সমস্যাগুলি করার অনুশীলন করা দরকার কেন: -সমস্যা স্বীকৃতি এবং যেখানে সঠিক ডেটা স্ট্রাকচার এবং অ্যালগরিদম ফিট করে -সমস্যার প্রয়োজনীয়তা সংগ্রহ করা -আপনি যেমন সাক্ষাত্কারে যাবেন ঠিক তেমন সমস্যার মধ্য দিয়ে কথা বলা -একটি হোয়াইটবোর্ড বা কাগজে কোডিং, কম্পিউটার নয় -আপনার সমাধানের জন্য সময় এবং স্থান জটিলতার সাথে হাজির -আপনার সমাধান পরীক্ষা করা

একটি সাক্ষাত্কারে পদ্ধতিগত, যোগাযোগমূলক সমস্যা সমাধানের জন্য দুর্দান্ত ভূমিকা রয়েছে। আপনি প্রোগ্রামিং থেকে এটি পাবেন সাক্ষাত্কারের বইগুলিও, তবে আমি এই অসামান্যটি পেয়েছি: [অ্যালগোরিদম ডিজাইন ক্যানভাস] (http://www.hiredintech.com/algorithm-design/)

বাড়িতে হোয়াইটবোর্ড নেই? এটা বোধগম্য. আমি একটি অদ্ভুত এবং একটি বড় হোয়াইটবোর্ড। হোয়াইটবোর্ডের পরিবর্তে, একটি বাছাই করুন একটি আর্ট স্টোর থেকে বড় অঙ্কন প্যাড। আপনি পালঙ্কে বসে অনুশীলন করতে পারেন। এটি আমার "সোফা হোয়াইটবোর্ড"। আমি স্কেলে কলমটি ফটোতে যুক্ত করেছি। আপনি যদি কলম ব্যবহার করেন তবে আপনি মুছে ফেলতে পারবেন। অগোছালো দ্রুত পায়।

! [আমার সোফা হোয়াইটবোর্ড] (https://d3j2pkmjtin6ou.cloudfront.net/art_board_sm_2.jpg)

প্রাসঙ্গিক:

-[টপকোডারদের জন্য গণিত] (https://www.topcoder.com / সম্প্রদায় / কমপিটিটিভ-প্রোগ্রামিং / টিউটোরিয়ালস / ম্যাথেমেটিক্সের জন্য-ট্যাপকোডার /) -[ডায়নামিক প্রোগ্রামিং-নোভাইস থেকে অ্যাডভান্সড] (https://www.topcoder.com/commune/competitive-pogramming/tutorials/dynamic-programming-from-novice-to-advanced/ -[এমআইটি সাক্ষাত্কার উপকরণ] (https://web.archive.org/web/20160906124824/http://courses.csail.mit.edu/iap/interview/matorys.php)

** প্রোগ্রামিং সমস্যাগুলি পড়ুন এবং করুন (এই ক্রমে): **

[উপরে বুক তালিকা] দেখুন (#বুক-তালিকা)

##কোডিং অনুশীলন / চ্যালেঞ্জ

<সংশ্লেষ> কোডিং প্রশ্ন অনুশীলন << সংক্ষিপ্ত>

একবার আপনি আপনার মস্তিষ্ক শিখে ফেললে, সেই মস্তিষ্কগুলিকে কাজে লাগান। প্রতিদিন যতটা সম্ভব কোডিং চ্যালেঞ্জ নিন।

কোডিং সাক্ষাত্কার প্রশ্ন ভিডিও: -[আইডিজার (৮৮ টি ভিডিও)] (https://www.youtube.com/watch?v=NBcqBddFbZw&list=PLamzFoFxwoNjPfxzaWqs7cZGsPYy0x_gI) -[তুষার রায় (৫ টি প্লেলিস্ট)] (https://www.youtube.com/user/tusharroy2525/playlists?shelf_id=2&view=50&sort=dd)

চ্যালেঞ্জ সাইটগুলি: -[লেটকোড] (https://leetcode.com/) -[টপকোডার] (https://www.topcoder.com/) -[প্রকল্পের এলিউর (গণিত-কেন্দ্রিক)] (https://projecteuler.net/index.php?section=problems) -[কোডওয়ারস] (http://www.codewars.com) -[হ্যাকারআর্থ] (https://www.haakerrearth.com/) -[হ্যাকারর্যাঙ্ক] (https://www.hackerrank.com/) -[কোডলিটি] (https://codility.com / প্রোগ্রামার /) -[ইন্টারভিউকেক] (https://www.interviewcake.com/) -[গিক্সের জন্য গিগস] (http://www.geeksforgeeks.org/) -[সাক্ষাত্কার বিট] (https://www.interviewbit.com) -[স্ফিয়ার অনলাইন জজ (স্পোজ)] (http://www.spoj.com/) -[কোডেফ] (https://www.codechef.com/)

চ্যালেঞ্জ রেপো: -[পাইথনে ইন্টারেক্টিভ কোডিং সাক্ষাত্কারের চ্যালেঞ্জগুলি] (https://github.com/donnemartin/interactive-coding-challenges)

মক সাক্ষাত্কার: -[গেইনলোক.কম: বড় সংস্থাগুলির মক সাক্ষাত্কার]] (http://www.gainlo.co/#!/)-আমি এটি ব্যবহার করেছি এবং এটি আমাকে ফোনের স্ক্রিন এবং সাইটে সাক্ষাত্কারের জন্য শিথিল করতে সহায়তা করেছে। -[প্র্যাম্প: সহকর্মীদের কাছ থেকে / সাথে মক সাক্ষাত্কার] (https://www.pramp.com/)-অনুশীলন সাক্ষাত্কারগুলির পিয়ার-টু-পিয়ার মডেল -[রেফড্যাশ: মক সাক্ষাত্কার এবং তাত্ক্ষণিক সাক্ষাত্কার]] (https://refdash.com/)-প্রযুক্তিবিদদের সাথে একাধিক সাক্ষাত্কার এড়িয়ে প্রার্থীদের দ্রুত ট্র্যাক করতে সহায়তা করে।

##একবার আপনি সাক্ষাত্কারের কাছাকাছি চলে আসবেন

  • কোডিং সাক্ষাত্কার সেট 2 (ভিডিও) ক্র্যাক করা: -[কোড সাক্ষাত্কারে ক্র্যাকিং] (https://www.youtube.com/watch?v=4NIb9l3imAo) -[কোডিং সাক্ষাত্কার ক্র্যাকিং-ফুলস্ট্যাক স্পিকার সিরিজ] (https://www.youtube.com/watch?v=Eg5-tdAwclo)

##আপনার সারসংকলন

-কোডিং সাক্ষাত্কার এবং ক্রমিং প্রোগ্রামিং সাক্ষাত্কারের পিছনে ক্র্যাকিং এ প্রিপ আইটেমগুলি পুনরায় শুরু দেখুন

##সাক্ষাত্কারটি কখন আসবে সে সম্পর্কে চিন্তাভাবনা করুন

নীচের আইটেমগুলির লাইন সহ আপনি পাবেন 20 টি সাক্ষাত্কারের প্রশ্ন। প্রতিটি জন্য 2-3 উত্তর আছে। আপনি অর্জন করেছেন এমন কিছু সম্পর্কে কেবল ডেটা নয়, একটি গল্প রাখুন।

-তুমি কেন এই চাকুরি চাও? -কোন কঠিন সমস্যা আপনি সমাধান করেছেন? -সবচেয়ে বড় চ্যালেঞ্জের মুখোমুখি? -সেরা / সবচেয়ে খারাপ ডিজাইন দেখা গেছে? -একটি বিদ্যমান পণ্য উন্নত করার জন্য ধারণা। -আপনি ব্যক্তিগতভাবে এবং একটি দলের অংশ হিসাবে কীভাবে সেরা কাজ করেন? -আপনার দক্ষতা বা অভিজ্ঞতাগুলির মধ্যে কোনটি ভূমিকায় সম্পদ হবে এবং কেন? -[জব x / প্রজেক্ট y] এ আপনি সবচেয়ে বেশি কী উপভোগ করেছেন? -[জব x / প্রজেক্ট y] এ আপনি যে সবচেয়ে বড় চ্যালেঞ্জের মুখোমুখি হয়েছিলেন? -আপনি [জব এক্স / প্রজেক্ট ওয়াই]-এ সবচেয়ে কঠিন বাগটি কীসের মুখোমুখি হয়েছিল? -আপনি [জব x / প্রজেক্ট y] এ কী শিখলেন? -[জব এক্স / প্রজেক্ট ওয়াই] তে আপনি কী আরও ভাল করতে পারতেন?

##সাক্ষাত্কারকারীর জন্য প্রশ্ন রয়েছে

আমার কিছু (আমি ইতিমধ্যে উত্তর জানতে পারে তবে তাদের মতামত বা দলের দৃষ্টিকোণ চাই):

-আপনার দলটি কত বড়? -আপনার দেবচক্রটি দেখতে কেমন? আপনি জলপ্রপাত / স্প্রিন্ট / চটজলটি করেন? -সময়সীমার দিকে ধাবিত হওয়া কি সাধারণ? নাকি নমনীয়তা আছে? -আপনার দলে কীভাবে সিদ্ধান্ত নেওয়া হয়? -আপনি প্রতি সপ্তাহে কত সভা? -আপনি কি মনে করেন আপনার কাজের পরিবেশ আপনাকে মনোনিবেশ করতে সহায়তা করে? -তুমি কিসের উপর কাজ করছ? -এ ব্যাপারে আপনি কি পছন্দ করেন? -কাজের জীবন কেমন?

##একবার আপনি কাজ পেয়ে যাবেন

অভিনন্দন!

শিখতে থাকুন।

আপনি সত্যিই কখনও করেনি।


************************************************** ************************************************** *
************************************************** ************************************************** *

এই বিন্দু নীচে সবকিছু Everythingচ্ছিক।
এগুলি অধ্যয়ন করে আপনি আরও সিএস ধারণাগুলির আরও বেশি প্রকাশ পেয়ে যাবেন এবং এর জন্য আরও ভাল প্রস্তুত থাকবেন
কোনও সফ্টওয়্যার ইঞ্জিনিয়ারিং কাজ। আপনি অনেক বেশি গোলাকার সফটওয়্যার ইঞ্জিনিয়ার হবেন।

************************************************** ************************************************** *
************************************************** ************************************************** *

##অতিরিক্ত বই

অতিরিক্ত বই

-[ইউনিক্স প্রোগ্রামিং পরিবেশ] (https://www.amazon.com/dp/013937681X) -একজন বয়স্ক কিন্তু গুডি -[লিনাক্স কমান্ড লাইন: একটি সম্পূর্ণ ভূমিকা] (https://www.amazon.com/dp/1593273894/) -একটি আধুনিক বিকল্প -[টিসিপি / আইপি সচিত্র সিরিজ] (https://en.wikedia.org/wiki/TCP/IP_ ইলাস্ট্রেটেড) -[প্রথম নকশার প্রধান শিরোনাম] (https://www.amazon.com/gp/product/0596007124/) -নকশা নিদর্শন একটি মৃদু ভূমিকা -[নকশার প্যাটার্নস: পুনরায় ব্যবহারযোগ্য অবজেক্ট-ওরিয়েন্টে ডি সফ্টওয়্যার এর উপাদানসমূহ] (https://www.amazon.com/ ডিজাইন-প্যাটার্নস-উপাদানসমূহ-পুনরায় ব্যবহারযোগ্য-অবজেক্ট-ওরিয়েন্টড / ডিপি / ২০১২ 36৩6363১২) -ওরফে "গ্যাং অফ ফোর" বই, বা জিওএফ -ক্যানোনিকাল ডিজাইন নিদর্শন বই -[ইউনিক্স এবং লিনাক্স সিস্টেম অ্যাডমিনিস্ট্রেশন হ্যান্ডবুক, 5 তম সংস্করণ] (https://www.amazon.com/UNIX-Linux-System-প্রশাসক-হ্যান্ডবুক/dp/0134277554/) -[অ্যালগোরিদম ডিজাইন ম্যানুয়াল] (http://www.amazon.com/Algorithm-ডিজাইন-ম্যানুয়াল-স্টিভেন-স্কিয়েনা / ডিপি / 1849967202) (স্কিয়েনা) -একটি পর্যালোচনা এবং সমস্যা স্বীকৃতি হিসাবে -অ্যালগোরিদম ক্যাটালগ অংশটি আপনি একটি সাক্ষাত্কারে পাবেন এমন অসুবিধার সুযোগের বাইরেও। -এই বইয়ের 2 টি অংশ রয়েছে: -ডেটা স্ট্রাকচার এবং অ্যালগরিদমের উপর ক্লাসের পাঠ্যপুস্তক -পেশাদার: -যে কোনও অ্যালগরিদম পাঠ্যপুস্তক যেমন হবে তেমন একটি ভাল পর্যালোচনা -শিল্প ও একাডেমিয়ার সমস্যা সমাধানের জন্য তাঁর অভিজ্ঞতা থেকে দুর্দান্ত গল্প -সি কোড কোড -কনস: -সিএলআরএসের মতো ঘন বা দুর্ভেদ্য হতে পারে এবং কিছু ক্ষেত্রে সিএলআরএস কিছু বিষয়ের জন্য আরও ভাল বিকল্প হতে পারে -অধ্যায় 7, 8, 9 অনুসরণ করার চেষ্টা করা বেদনাদায়ক হতে পারে, কারণ কিছু আইটেম ভালভাবে ব্যাখ্যা করা হয়নি বা আমার চেয়ে বেশি মস্তিষ্কের প্রয়োজন নেই -আমাকে ভুল মনে করবেন না: আমি স্কিয়েনা, তার শিক্ষার ধরন এবং পদ্ধতিগুলি পছন্দ করি তবে আমি স্টনি ব্রুকের উপাদান নাও হতে পারি। -অ্যালগরিদম ক্যাটালগ: -আপনি এই বইটি কেনার আসল কারণ। -এই অংশে পেতে। এটির মাধ্যমে একবার আমার পথ তৈরি হয়ে গেলে এখানে আপডেট হবে। -কিন্ডেল এ ভাড়া দিতে পারেন -উত্তর: -[সমাধান] (http://www.algorithm.cs.sunysb.edu/algowiki/index.php/The_Algorithms_ ডিজাইন_ ম্যানুয়াল_ (দ্বিতীয়_ সংস্করণ) -[সমাধান] (http://blog.panictank.net/category/algorithmndesignmanoutsolutions/page/2/) -[এরেতা] (http://www3.cs.stonybrook.edu/~skiena/algorist/book/errata)

-[অ্যালগরিদমের ভূমিকা] (https://www.amazon.com/Intr Productions-আলগোরিদিমস ৩ য়আর-এমআইটি-প্রেস / ডিপি/0262033844) -** গুরুত্বপূর্ণ: ** এই বইটি পড়ার কেবল মূল্য সীমিত থাকবে। এই বইটি অ্যালগরিদম এবং ডেটা স্ট্রাকচারের দুর্দান্ত পর্যালোচনা, তবে কীভাবে ভাল কোড লিখতে হয় তা শেখায় না। আপনি দক্ষতার সাথে একটি শালীন সমাধান কোড করতে সক্ষম হতে হবে। -ওরফে সিএলআর, কখনও কখনও সিএলআরএস, কারণ স্টেইন খেলায় দেরি করেছিল

-[কম্পিউটার আর্কিটেকচার, ষষ্ঠ সংস্করণ: একটি পরিমাণগত পদ্ধতির] (https://www.amazon.com/dp/0128119055) -আরও সমৃদ্ধের জন্য আরও আধুনিক (2017), তবে দীর্ঘতর চিকিত্সা

-[প্রোগ্রামিং পার্লস] (http://www.amazon.com/Programming-Pearls-2nd-জন-Bentley/dp/0201657880) -প্রথম অধ্যায় দুটি প্রোগ্রামিং সমস্যার চতুর সমাধান উপস্থাপন করে (কিছু ডেটা টেপ ব্যবহার করে খুব পুরানো) তবে এটি কেবল একটি ভূমিকা প্রোগ্রামের নকশা এবং আর্কিটেকচারের জন্য এটি একটি গাইডবুক, অনেকটা কোড কমপ্লিটের মতো, তবে আরও ছোট।

##অতিরিক্ত শিক্ষা

অতিরিক্ত পড়াশুনা <সংক্ষিপ্ত>

এই বিষয়গুলি সম্ভবত কোনও সাক্ষাত্কারে উঠে আসবে না, তবে আপনাকে সুদৃ .় হতে সাহায্য করার জন্য আমি এগুলি যুক্ত করেছি সফ্টওয়্যার ইঞ্জিনিয়ার, এবং নির্দিষ্ট প্রযুক্তি এবং অ্যালগরিদম সম্পর্কে সচেতন হতে যাতে আপনার কাছে একটি বড় টুলবক্স থাকে।

-###সংকলক

-###ইম্যাক্স এবং ভিআই (মি) -ইউনিক্স ভিত্তিক কোড সম্পাদকের সাথে নিজেকে পরিচিত করুন -vi (এম): -[ভিএম 01 সহ সম্পাদনা-ইনস্টলেশন, সেটআপ, এবং মোডগুলি (ভিডিও)] (https://www.youtube.com/watch?v=5givLEMcINQ&index=1&list=PL13bz4SHGmRxlZVmWQ9DvXo1fEg4UdGkr) -[ভিআইএম অ্যাডভেঞ্চারস] (http://vim-ad مہم.com/) -4 টি ভিডিওর সেট: -[দ্বি / ভিআইএম সম্পাদক-পাঠ 1] (https://www.youtube.com/watch?v=SI8TeVMX8pk) -[দ্বি / ভিআইএম সম্পাদক-পাঠ 2] (https://www.youtube.com/watch?v=F3OO7ZIOaEE) -[দ্বি / ভিআইএম সম্পাদক-পাঠ 3] (https://www.youtube.com/watch?v=ZYEccA_nMaI) -[দ্বি / ভিআইএম সম্পাদক-পাঠ 4] (https://www.youtube.com/watch?v=1lYD5gwgZIA) -[ইমাসের পরিবর্তে ভী ব্যবহার করা] [http://www.cs.yale.edu/homes/aspnes/classes/223/notes.html#ব্যবহার_ভি_ইনস্টিড_ও_এম্যাকস) -ইমাস: -[বুনিয়াদি ইম্যাকস টিউটোরিয়াল (ভিডিও)] (https://www.youtube.com/watch?v=hbmV1bnQ-i0) -3 সেট (ভিডিও): -[ইমাস টিউটোরিয়াল (প্রারম্ভিক)-পার্ট 1-ফাইল কমান্ড, কাট / অনুলিপি / পেস্ট করুন, কার্সার কমান্ড] (https://www.youtube.com/watch?v=ujODL7MD04Q) -[ইমাস টিউটোরিয়াল (প্রারম্ভিক)-পার্ট 2-বাফার পরিচালনা, অনুসন্ধান, এমএক্স গ্রেপ এবং আরগ্রিপ মোড] (https://www.youtube.com/watch?v=XWpsRupJ4II) -[ইমাস টিউটোরিয়াল (প্রারম্ভিক)-পর্ব 3-এক্সপ্রেশন, বিবৃতি, ~ / .emacs ফাইল এবং প্যাকেজ] (https://www.youtube.com/watch?v=paSgzPso-yc) -[এভিল মোড: বা, আমি কীভাবে উদ্বেগ বন্ধ করতে এবং ইমাসকে ভালোবাসতে শিখেছি (ভিডিও)] (https://www.youtube.com/watch?v=JWD1Fpdd4Pc) -[ইমাস সহ সি প্রোগ্রাম রচনা] [http://www.cs.yale.edu/homes/aspnes/class/223/notes.html#রাইটিং_সি_প্রগ্রাম_উইথ_এম্যাকস) -[(হতে পারে) অরগ মোড গভীরতায়: কাঠামো পরিচালনার (ভিডিও)] (https://www.youtube.com/watch?v=nsGYet02bEk)

-###ইউনিক্স কমান্ড লাইন সরঞ্জাম -আমি ভাল সরঞ্জামগুলি থেকে নীচে তালিকায় পূর্ণ করেছি।

-###তথ্য তত্ত্ব (ভিডিও)

-###সমতা এবং হামিং কোড (ভিডিও)

-###এন্ট্রপি -নীচে ভিডিও দেখুন -প্রথমে তথ্য তত্ত্বের ভিডিওগুলি নিশ্চিত করে দেখুন

  • [তথ্য তত্ত্ব, ক্লড শ্যানন, এন্ট্রপি, রিডানডেন্সি, ডেটা সংক্ষেপণ এবং বিটস (ভিডিও)] (https://youtu.be/JnJq3Py0dyM?t=176)

-###ক্রিপ্টোগ্রাফি -নীচে ভিডিও দেখুন -প্রথমে তথ্য তত্ত্বের ভিডিওগুলি নিশ্চিত করে দেখুন

-###সঙ্কোচন -প্রথমে তথ্য তত্ত্বের ভিডিওগুলি নিশ্চিত করে দেখুন

-###কম্পিউটার নিরাপত্তা -[এমআইটি (২৩ টি ভিডিও)] (https://www.youtube.com/playlist?list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [ভূমিকা, হুমকির মডেল] (https://www.youtube.com/watch?v=GqmQg-cszw4&index=1&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [হাইজ্যাকিং আক্রমণকে নিয়ন্ত্রণ করুন] (https://www.youtube.com/watch?v=6bwzNg5qQ0o&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=2) - [বাফার ওভারফ্লো শোষণ এবং প্রতিরক্ষা] (https://www.youtube.com/watch?v=drQyrzRoRiA&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=3) - [প্রিভিলেজ বিচ্ছেদ] (https://www.youtube.com/watch?v=6SIJmoE9L9g&index=4&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [সক্ষমতা] (https://www.youtube.com/watch?v=8VqTSY-11F4&index=5&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [স্যান্ডবক্সিং নেটিভ কোড] (https://www.youtube.com/watch?v=VEV74hwASeU&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh&index=6) - [ওয়েব সুরক্ষা মডেল] (https://www.youtube.com/watch?v=chkFBigodIw&index=7&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [ওয়েব অ্যাপ্লিকেশনগুলি সুরক্ষিত করা] (https://www.youtube.com/watch?v=EBQIGy1ROLY&index=8&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [সিম্বলিক এক্সিকিউশন] (https://www.youtube.com/watch?v=yRVZPvHYHzw&index=9&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [নেটওয়ার্ক সুরক্ষা] (https://www.youtube.com/watch?v=SIEVvk3NVuk&index=11&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [নেটওয়ার্ক প্রোটোকল] (https://www.youtube.com/watch?v=QOtA76ga_fY&index=12&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh) - [সাইড-চ্যানেল আক্রমণগুলি) (https://www.youtube.com/watch?v=PuVMkSEcPiI&index=15&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh)

-###আবর্জনা সংগ্রহ

-###সমান্তরাল প্রোগ্রামিং

-###মেসেজিং, সিরিয়ালাইজেশন এবং কুইউিং সিস্টেম

-###এ *

-###ফাস্ট ফোরিয়ার ট্রান্সফর্ম

-###ব্লুম ফিল্টার -এম বিট এবং কে হ্যাশিং ফাংশন সহ একটি ব্লুম ফিল্টার দেওয়া, সন্নিবেশ এবং সদস্যপদ পরীক্ষা উভয়ই হ'ল (কে) -[ব্লুম ফিল্টার (ভিডিও)] (https://www.youtube.com/watch?v=-SUTGoFYjZs) -[ব্লুম ফিল্টার | ম্যাসিভ ডেটাসেটের খনন | স্ট্যানফোর্ড বিশ্ববিদ্যালয় (ভিডিও)] (https://www.youtube.com/watch?v=qBTdukbzc78) -[টিউটোরিয়াল] (http://billmill.org/bloomfilter-tutorial/) -[ব্লুম ফিল্টার অ্যাপ কীভাবে লিখবেন] (http://blog.michaelschmatz.com/2016/04/11/how-to-write-a-bloom-filter-cpp/)

-###হাইপারলগলগ -[কেবল মাত্র 1.5 কেবি মেমরি ব্যবহার করে এক বিলিয়ন স্বতন্ত্র বিষয়গুলি কীভাবে গণনা করতে হবে) (http://highscalability.com/blog/2012/4/5/big-data-counting-how-to-count-a-billion-distinct-objects-us.html)

-###লোকালয়-সংবেদনশীল হ্যাশিং -নথির সাদৃশ্য নির্ধারণ করতে ব্যবহৃত -MD5 বা SHA এর বিপরীত যা 2 টি নথি / স্ট্রিং ঠিক একই কিনা তা নির্ধারণ করতে ব্যবহৃত হয়। -[সিমহাশিং (আশাবাদী) সহজ করে]] (http://ferd.ca/simhashing-hopefully-made-simple.html)

-###ভ্যান এমডে বোস ট্রি

-###সংযুক্ত ডেটা কাঠামো

-###ভারসাম্যযুক্ত অনুসন্ধান গাছ -কমপক্ষে এক ধরণের সুষম বাইনারি ট্রি জানুন (এবং এটি কীভাবে প্রয়োগ করা হয় তা জানুন): -"সুষম অনুসন্ধান গাছগুলির মধ্যে, এভিএল এবং ২/৩ টি গাছ এখন পাস é এবং লাল-কালো গাছগুলি আরও জনপ্রিয় বলে মনে হচ্ছে। একটি বিশেষ আকর্ষণীয় স্ব-সংগঠিত ডেটা কাঠামো হ'ল স্প্লে ট্রি, যা ঘূর্ণন ব্যবহার করে যে কোনও অ্যাক্সেসযুক্ত কীটি রুটে নিয়ে যেতে ""-স্কিয়েনা -এর মধ্যে আমি একটি স্প্লে গাছকে বাস্তবায়ন করতে বেছে নিয়েছি। আমি যা পড়েছি তা থেকে আপনি একটি বাস্তবায়ন করবেন না আপনার সাক্ষাত্কারে ভারসাম্যযুক্ত অনুসন্ধান গাছ। তবে আমি একটি আপ কোডিং এক্সপোজার চেয়েছিলেন এবং আসুন এটির মুখোমুখি হওয়া, স্প্লে গাছগুলি মৌমাছির হাঁটু। আমি প্রচুর লাল-কালো গাছের কোডটি পড়েছি। -স্প্লে ট্রি: সন্নিবেশ, অনুসন্ধান, ফাংশন মুছুন যদি আপনি লাল / কালো গাছ প্রয়োগ করে শেষ করেন তবে এইগুলি ব্যবহার করে দেখুন: -অনুসন্ধান এবং সন্নিবেশ ফাংশন, মুছুন এড়ানো -আমি বি-ট্রি সম্পর্কে আরও জানতে চাই যেহেতু এটি খুব বড় ডেটা সেটগুলির সাথে এত ব্যাপকভাবে ব্যবহৃত হয়।

  • [স্ব-ভারসাম্য বাইনারি অনুসন্ধান বৃক্ষ] (https://en.wikedia.org/wiki/S سیل-ব্যালেন্সিং_বাইনারি_সার্চ_ট্রি)

  • ** এভিএল গাছ ** -প্রস্তুতিতে: আমি যা বলতে পারি, সেগুলি থেকে অনুশীলনে এগুলি বেশি ব্যবহার করা হয় না, তবে আমি দেখতে পেতাম তারা কোথায় থাকবে: এভিএল ট্রি ও (লগ এন) অনুসন্ধান, সন্নিবেশ এবং অপসারণকে সমর্থনকারী আরেকটি কাঠামো। এটি আরও কঠোরভাবে হয় লাল কালো গাছের চেয়ে সুষম, ধীরে ধীরে সন্নিবেশ এবং অপসারণ কিন্তু দ্রুত পুনরুদ্ধারের দিকে পরিচালিত করে। এটি এটি তোলে ডেটা স্ট্রাকচারের জন্য আকর্ষণীয় যা একবারে তৈরি করা যেতে পারে এবং ভাষা যেমন পুনর্গঠন ছাড়াই লোড করা যেতে পারে অভিধানগুলি (বা প্রোগ্রামের অভিধান, যেমন কোনও এসেম্বলার বা দোভাষীর অপকডস)।

  • ** গাছ স্প্লে ** -প্রস্তুতিতে: স্প্লে গাছগুলি সাধারণত ক্যাশে, মেমরি বরাদ্দকারী, রাউটার, আবর্জনা সংগ্রহকারী, উইন্ডোজ এনটি-তে (ভার্চুয়াল মেমরির মধ্যে, ডেটা সংক্ষেপণ, দড়ি (দীর্ঘ পাঠ্য স্ট্রিংয়ের জন্য ব্যবহৃত স্ট্রিংয়ের প্রতিস্থাপন)) নেটওয়ার্কিং এবং ফাইল সিস্টেম কোড) ইত্যাদি

  • ** লাল / কালো গাছ ** -এটি একটি 2-3 গাছের অনুবাদ (নীচে দেখুন) -প্রস্তুতিতে: লাল কালো গাছগুলি সন্নিবেশের সময়, মোছার সময় এবং অনুসন্ধানের সময়ের জন্য সবচেয়ে খারাপ গ্যারান্টি সরবরাহ করে। এটি কেবল তাদেরকে সময়-সংবেদনশীল অ্যাপ্লিকেশন যেমন রিয়েল-টাইম অ্যাপ্লিকেশনগুলিতে মূল্যবান করে তোলে না, তবে এটি তাদের অন্যান্য ডেটা স্ট্রাকচারগুলিতে মূল্যবান বিল্ডিং ব্লক করে তোলে যা সবচেয়ে খারাপ ক্ষেত্রে গ্যারান্টি সরবরাহ করে; উদাহরণস্বরূপ, গণনা জ্যামিতিতে ব্যবহৃত অনেক ডেটা স্ট্রাকচারগুলি লাল কালো গাছের উপর ভিত্তি করে এবং বর্তমান লিনাক্স কার্নেলগুলিতে ব্যবহৃত সম্পূর্ণ ফেয়ার সিডিউলার লাল-কালো গাছ ব্যবহার করে। জাভার 8 সংস্করণে, সংগ্রহের হ্যাশম্যাপটি এমনভাবে সংশোধন করা হয়েছে যে দুর্বলদের সাথে অভিন্ন উপাদানগুলি সংরক্ষণ করতে লিংকডলিস্ট ব্যবহার না করে হ্যাশকোডস, একটি লাল-কালো গাছ ব্যবহৃত হয়।

  • ** ২-৩ টি অনুসন্ধান গাছ ** -প্রস্তুতিতে: ধীরে ধীরে অনুসন্ধানের ব্যয়ে 2-3 টি গাছে দ্রুত সন্নিবেশ থাকে (যেহেতু এভিএল গাছের তুলনায় উচ্চতা বেশি)। -আপনি খুব সহজেই 2-3 গাছ ব্যবহার করবেন কারণ এর প্রয়োগে নোডের বিভিন্ন ধরণের জড়িত। পরিবর্তে লোকে লোহিত কালো গাছ ব্যবহার করে।

  • ** ২-৩- টি গাছ (ওরফ ২- টি গাছ) ** -প্রস্তুতিতে: প্রতি 2-4 টি গাছের জন্য, একই ক্রমে ডেটা উপাদানগুলির সাথে সম্পর্কিত লাল কালো গাছ রয়েছে। সন্নিবেশ এবং মোছা 2-4 টি গাছের ক্রিয়াকলাপগুলি রঙ-ফ্লিপিং এবং লাল-কালো গাছে ঘূর্ণনের সমতুল্য। এটি 2-4 গাছ একটি করে লাল-কালো গাছগুলির পিছনে যুক্তি বোঝার জন্য গুরুত্বপূর্ণ সরঞ্জাম এবং এ কারণেই অনেক সূচনা অ্যালগরিদম পাঠগুলি প্রবর্তন করে লাল-কালো গাছের ঠিক আগে 2-4 টি গাছ, যদিও ** 2-4 টি গাছ সাধারণত অনুশীলনে ব্যবহৃত হয় না **।

  • ** এন-অ্যারি (কে-আরি, এম-আরি) গাছগুলি ** -দ্রষ্টব্য: এন বা কে শাখা প্রশাখার উপাদান (সর্বাধিক শাখা) -বাইনারি গাছগুলি একটি 2-অ্যারি গাছ, যার শাখা ফ্যাক্টর = 2 থাকে -2-3 গাছ 3-ary হয়

  • ** বি-ট্রিস ** -মজার ঘটনা: এটি একটি রহস্য, তবে বি বোয়িং, ভারসাম্যহীন বা বায়ারের পক্ষে (সহ-উদ্ভাবক) দাঁড়াতে পারে -প্রস্তুতিতে: বি-ট্রিগুলি ডেটাবেজে ব্যাপকভাবে ব্যবহৃত হয়। বেশিরভাগ আধুনিক ফাইল সিস্টেমগুলি বি-ট্রি (বা ভেরিয়েন্ট) ব্যবহার করে। এ ছাড়াও ডাটাবেসগুলিতে এর ব্যবহার, বি-ট্রি ফাইল সিস্টেমে একটি স্বতন্ত্রভাবে দ্রুত এলোমেলো অ্যাক্সেসের জন্য ব্যবহৃত হয় allow একটি নির্দিষ্ট ফাইল ব্লক। মূল সমস্যাটি হ'ল ফাইল ব্লক আই ঠিকানাটিকে ডিস্ক ব্লকে পরিণত করে into (বা সম্ভবত একটি সিলিন্ডার-মাথা-সেক্টর) ঠিকানা।

-###কেডি গাছ -একটি আয়তক্ষেত্র বা উচ্চ মাত্রার অবজেক্টে পয়েন্ট সংখ্যা সন্ধানের জন্য দুর্দান্ত -কে-নিকটতম প্রতিবেশীদের জন্য ভাল ফিট

-###তালিকা বাদ দিন -"এগুলি কিছুটা কাল্ট ডেটা কাঠামো"-স্কিয়েনা

-###নেটওয়ার্ক প্রবাহ

-###অসম্পূর্ণ সেট ও ইউনিয়ন অনুসন্ধান করুন

-###দ্রুত প্রক্রিয়াজাতকরণের জন্য গণিত

-###ট্রেপ -একটি বাইনারি অনুসন্ধান গাছ এবং একটি গাদা সংমিশ্রণ

-###লিনিয়ার প্রোগ্রামিং (ভিডিও)

-###জ্যামিতি, উত্তল হাল (ভিডিও)

-###স্বতন্ত্র গণিত -নীচে ভিডিও দেখুন

-###মেশিন লার্নিং


##কিছু বিষয় সম্পর্কে অতিরিক্ত বিশদ

<সুমারী> কিছু বিষয় সম্পর্কে অতিরিক্ত বিবরণ
আমি ইতিমধ্যে উপরে উপস্থাপন করা কিছু ধারণাকে শক্তিশালী করতে এগুলি যুক্ত করেছি, তবে সেগুলি অন্তর্ভুক্ত করতে চাইনি
উপরে কারণ এটি ঠিক অনেক বেশি। কোনও বিষয়ে এটি অতিরিক্ত পরিমাণে নেওয়া সহজ।
আপনি এই শতাব্দীতে ভাড়া পেতে চান, তাই না?

-[ ] শ্রেণীবিভাজন

##ভিডিও সিরিজ

ফিরে বসে উপভোগ করুন। "নেটফ্লিক্স এবং দক্ষতা": পি

<সুমারী> ভিডিও সিরিজ

##কম্পিউটার সায়েন্স কোর্স

-[অনলাইন সিএস কোর্সগুলির ডিরেক্টরি] (https://github.com/open-source-sociversity/computer-s विज्ञान) -[সিএস কোর্সের ডিরেক্টরী (অনেকগুলি অনলাইন লেকচার সহ)] (https://github.com/prakhar1989/awesome-courses)

##কাগজপত্র

পেপারস

-[ক্লাসিক কাগজগুলি ভালবাসেন?] (Https://www.cs.cmu.edu/~crary/819-f09/)

##লাইসেন্স

[সিসি-বাই-এসএ-4.0] (./ LICENSE.txt)