ডেটা স্ট্রাকচার এবং অ্যালগরিদম প্রোগ্রামিং এর সমস্যা অনুশীলন করার জন্য ৫টি ওয়েবসাইট

01 October 2023

1 min read

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

আমি একজন ডেভেলপার এবং জাভাতে DSA সমস্যা সমাধান করতে ভালোবাসি। আমি প্রায় ১.৫ বছর ধরে জাভাতে কোড করছি এবং প্রবলেম সলভিং করছি। এই সময়কালে আমি প্রবলেম সলভিং করার জন্য এবং অনুশীলন চালিয়ে যাওয়ার জন্য বেশ কয়েকটি ওয়েবসাইট পেয়েছি।

কেনো আপনার DSA সমস্যা সমাধান করতে হবে?

💫ভাষা এবং এর ধারণাগুলোকে সবচেয়ে ভালোভাবে বোঝার জন্য আপনার DSA সমস্যা সমাধান করতে হবে। এছাড়াও এই সমস্যাগুলোর সমাধান করা আপনাকে ডেভেলপার হিসেবে প্রযুক্তি সংস্থাগুলোতে চাকরি পাওয়ার সবচেয়ে ভালো সুযোগ করে দিবে।✅ডেভেলপার ভূমিকার জন্য, এসব কোম্পানিরা তাদের নির্বাচন প্রক্রিয়ার ইন্টারভিউ এবং লিখিত রাউন্ডে DSA সমস্যাগুলো জিজ্ঞাসা করে।

এই ব্লগে আমি ৫ টি ওয়েবসাইট সম্পর্কে কথা বলবো যেগুলো সমস্যা সমাধানের জন্য সেরা। এগুলি বিভিন্ন ধরণের সমস্যা অফার করে এবং সকল বয়সের লোকেরা এই ওয়েবসাইটগুলোকে সুপারিশ করে। এমনকি একজন ৩০-৪০ বছর বয়সী যিনি চাকরি বা ক্যারিয়ার পরিবর্তন করতে চাচ্ছেন এই সাইটগুলোকে রেফার করেন।শুরু করার জন্য, এটা এমন কোনো ওয়েবসাইট হতে হবে যেটা আমি কিছু সমস্যা সমাধানের জন্য প্রথম পরিদর্শন করেছিলাম।✅Hacker Rank

আপনার কোডিং শুরু করার জন্য প্রথম প্ল্যাটফর্ম হওয়া উচিৎ HackerRank. আপনি চিন্তা করতে পারেনন, এমন প্রতিটি ভাষার সমস্যা এখানে রয়েছে, যেগুলো ভালোভাবে বিভিন্ন বিভাগে শ্রেণিবদ্ধ করা। উদাহরণস্বরূপ আপনি শুধুমাত্র Java-র সমস্যা সমাধান করতে চান। শুধুমাত্র মৌলিক ধারণাগত জাভার সমস্যার জন্য তাদের একটি বিশেষ কর্নার রয়েছে। তারপর আপনি আরো জটিল ডেটা স্ট্রাকচারের সমস্যা সমাধান করতে চান; আপনি তাদের সমস্যা সমাধানের বিভাগটি চেক করে দেখতে পারেন।

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

✅GeeksforGeeks

GeeksforGeeks হলো এমন একটি সাইট যেটা আমার সমস্যা সমাধানের দক্ষতাকে অনেক বেশি উন্নত করতে সাহায্য করেছিল এবং এখনো করছে। প্রায়ই প্রযুক্তিবিদরা একে GFG বলে থাকেন। এটি কম্পিউটার সায়েন্সের জন্য সেরা পোর্টাল।

আপনি যখন কম্পিউটার সায়েন্স বলেন, আমি শুনি GeeksforGeeks.

👉তাদের সবকিছু রয়েছে, মূল বিষয়গুলো যেমন: DBMS, OS Networking থেকে শুরু করে প্রায় প্রতিটি ভাষার আর্টিকেল এবং কনসেপ্ট। তবে তাদের সেরা বিভাগটি হলো ডেটা স্ট্রাকচার সমস্যাগুলির সংগ্রহ। প্রায় প্রতিটি বিষয়ে তাদের ২০০ টিরও বেশি অনুশীলনের জন্য সমস্যা রয়েছে। প্রশ্নগুলিতে কোম্পানি ট্যাগও রয়েছে অর্থাৎ বিগত বছরগুলোতে বিভিন্ন প্রযুক্তি কোম্পানির পরীক্ষায় আসা কোনো নির্দিষ্ট প্রশ্ন থাকলে তা চিহ্নিত করা থাকে। এছাড়াও তাদের প্রতিটি প্রশ্নের মানবন্টন দেওয়া আছে এবং একটি ranking সিস্টেম রয়েছে যেটা আপনার rank দেখাবে। এর ফলে একটা প্রতিযোগিতামূলক পরিবেশ বিরাজ করে এবং তা আপনাকে আরো ভালো করার জন্য চাপ দেয়। এইসব ছাড়াও, আলোচনা করার আলাদা বিভাগ রয়েছে যেটা যেকোনো সাহায্য চাওয়ার জন্য উপযুক্ত।

ভারতের প্রতিটি কলেজ ছাত্র যারা প্রযুক্তি শিল্পে চাকরি পেতে চায় বা Computer Science Fundamentals শিখতে চায় তারা GFG ব্যবহার করার সুপারিশ দেয়।তাহলে, উপরে আমরা দুইটা ওয়েবসাইট দেখলাম যেখানে দেওয়া আছে DSA সমস্যা, পড়াশোনা করার জন্য SQL সমস্যার আর্টিকেল, সাথে কম্পিউটার সায়েন্স সম্পর্কিত আরো অনেক কিছু।এখন আমি কথা বলবো নিম্নলিখিত তিনটি ওয়েবসাইট সম্পর্কে যেগুলো শুধুমাত্র ডেটা স্ট্রাকচার সমস্যা সমাধানের জন্য এবং এরা প্রযুক্তি শিল্পে স্বীকৃত। এই ওয়েবসাইটগুলোর যেকোনো একটিতে ভালো rank থাকলে বা এসব সাইটে অনেক সমস্যা সমাধান করলে তা আপনাকে নিয়োগকারীদের নজরে পড়ার সুযোগ বাড়িয়ে দেয় এবং আপনাকে আপনার স্বপ্নের প্রযুক্তি কোম্পানির জব পেতে সাহায্য করবে।

CODECHEF

প্রতিটা বয়সের কোডারদের মধ্যে CodeChef এর জনপ্রিয়তা প্রতিদিনই বাড়ছে। অন্যান্য ওয়েবসাইটগুলোতে সরাসরি DSA সমস্যা দেওয়া থাকে, যেমন: The middle element of an array, Reverse a linked list ইত্যাদি। কিন্তু CodeChef একটি সমস্যা বিবৃত করে বা গল্পের আকারে প্রশ্নগুলো তৈরি করে।এখানকার সমস্যাগুলোর সমাধানে আসার আগে অনেক চিন্তাভাবনা এবং চেষ্টা করতে হয়।CodeChef যেই gig-এর জন্য পরিচিত তা হলো তাদের প্রতিযোগিতা। প্রতি মাসে এই প্রতিযোগিতাগুলো হয়। প্রতি মাসে প্রধানত তিনটি প্রতিযোগিতা হয়:

• Long Challenge: মাসের প্রথম চ্যালেঞ্জ এবং কয়েকদিনের জন্য সক্রিয় থাকে।

• Cook-Off: এটা একটি তিন ঘন্টার sprint, যেখানে আপনাকে কয়েকটি প্রশ্নের পুল থেকে সমস্যার সমাধান করতে হবে।

• Lunchtime: আর এই চ্যালেঞ্জ দিয়ে মাস শেষ হয়। এই চ্যালেঞ্জগুলোর মধ্যে পারফরম্যান্স আপনার রেটিং পয়েন্ট বাড়ায়, যেটা আপনার CodeChef স্টার বাড়াতে সাহায্য করে।আপনি যদি যেকোনো ক্ষেত্রে ৪ বা ৫ স্টারে পৌঁছাতে পারেন, তাহলে আপনি দেশের সেরাদের মধ্যে একজন।

,✅CODEFORCES

এটা এমন একটি পোর্টাল যেখানে সংখ্যা এবং দক্ষতার দিক দিয়ে দর্শক সংখ্যা বিশাল। এটা সমস্যা সমাধানের জন্য সবচেয়ে প্রতিযোগিতামূলক পোর্টালগুলোর মধ্যে একটি।CodeChef এর মতো, তারাও ঘন ঘন প্রতিযোগিতা নেয়, যা Codeforces রেটিং বাড়ায়, যা আপনার দক্ষতা মাপার জন্য তাদের মেট্রিক।Codeforces রেটিং আপনার কোডিং দক্ষতা পরিমাপ করার জন্য একটি শিল্প মেট্রিক।কখনো কখনো শুধুমাত্র আপনার CodeForces রেটিং এর ওপর ভিত্তি করে আপনি প্রাথমিক পরীক্ষায় সিলেক্ট হয়ে যেতে পারেন।

LEETCODE

আবারো, প্রযুক্তি শিল্পে স্বীকৃত ওয়েবসাইটগুলোর মধ্যে একটি। আপনি Google, Amazon এবং Facebook এর অনেক ডেভেলপার পাবেন যারা আপনাকে LeetCode এ সমস্যা সমাধানের পরামর্শ দিবেন। 

তাদের প্রশ্নের সংখ্যা অন্যদের তুলনায় কম, এবং তা হলো ১৬০০ টি। কিন্তু সব কয়টিই তাদের পদে ভিন্ন। নিয়োগকারীরা যেই প্যাটার্ন অনুসরণ করে সেই একই প্যাটার্নে তারা আপনার দক্ষতার পরীক্ষা নেয়। প্রশ্নগুলো কোম্পানি ভিত্তিক আলাদা আলদাভাবে শ্রেণিবদ্ধ করা, যা একটি নির্দিষ্ট কোম্পানির জন্য প্রস্তুতির ক্ষেত্রে সহায়ক।কয়েকটি নির্বাচনী পরীক্ষা দেখার পর, আমি বলতে পারি LeetCode এর সমস্যাগুলোর ৫০% সমাধান করলে তা আপনাকে আপনার চাকরির জন্য যেকোনো কোডিং পরীক্ষার রাউন্ড পার করতে আত্মবিশ্বাস দিবে।তাদের কয়েকটি প্রতিযোগিতাও চলছে। তবে তাদের বেশিরভাগ চমৎকার বৈশিষ্ট্য পেইড প্রিমিয়াম পরিষেবার অন্তর্ভুক্ত।সুতরাং, আপনি LeetCode এর সর্বোত্তম ব্যবহার করতে পারেন ঐ ১৬০০ টি প্রশ্নের সমাধান করার মাধ্যমে।

এটি দিয়ে আমরা ব্লগের শেষে চলে এলাম। একটি শেষ উপদেশ যা আমি শেয়ার করতে চাই তা হলো, আপনি যদি কোডিং এ নতুন হন, HackerRank বা GFG দিয়ে শুরু করুন, তারপর LeetCode এবং CodeChef এ যান।

Share this article

RELATED ARTICLES

টেকনোলজি না জানা কেউ কি DevOps শিখতে পারবে?  ||  Can A Non_IT Person Learn DevOps? (DevOps Guideline for Non-IT Person)

বর্তমান টেক দুনিয়ায় DevOps (Development and Operations) একটি জনপ্রিয় প্রফেশান হিসেবে গড়ে উঠেছে। DevOps মূলত একটি প্রসেস যা সফটওয়্যার ডেভেলপমেন্ট এবং আইটি অপারেশনস টিমের মধ্যে কম্বাইন করে, যার ফলে ফাস্ট, রিলায়েবল এবং ইফেক্টিভ সফটওয়্যার ডেলিভারি এনশিউর হয়। DevOps-এ ডেভেলপ মানে কেবল টেকনিক্যাল স্কিল নয়, বরং টিম কোলাবোরেশন, কালচারাল চেঞ্জ এবং ডেভেলপ প্রসেসের ইউজের স্কিলও এতে ইনক্লুডেট। আজ আলোচনা করা হবে, Non-IT বা টেকনোলজিক ফিল্ডে না থাকা কেউ কি DevOps শিখতে পারবে? এবং এই প্রফেশানে সাকসেসফুলল

20 October 2024

1 min read

DevOps শেখা কি সহজ? ||  Is DevOps Easy to Learn? (DevOps Learning Guideline)

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

20 October 2024

1 min read

DevOps এর কোন ল্যাঙ্গুয়েজটি বেস্ট?  ||  Which Language is Best for DevOps? || (Best Language For DepOps)

DevOps বর্তমানে সফটওয়্যার ডেভেলপমেন্ট এবং আইটি অপারেশনসের কম্বাইন প্রসেস হিসেবে কাজ করছে। এর মূল উদ্দেশ্য হলো সফটওয়্যার ডেলিভারি প্রসেসকে ফাস্ট এবং কারেক্টলি কমপ্লিট করা, যেখানে ডেভেলপার এবং অপারেশন টিম কোলাবোরেটলি কাজ করে। DevOps প্রসেসে DevOps এর জন্য পারফেক্ট প্রোগ্রামিং ল্যাঙ্গুয়েজের সিলেক্ট করা অত্যন্ত গুরুত্বপূর্ণ কারণ এটি সিস্টেম অটোমেশন, কনফিগারেশন ম্যানেজমেন্ট, ইনফ্রাস্ট্রাকচার ম্যানেজমেন্ট এবং আরও বিভিন্ন কাজে হেল্পফুল হয়। DevOps-এর কাজের প্রসেসে ইউজ করার মতো বিভিন্ন প্রোগ্রামিং ল্

08 October 2024

1 min read

পাইথন কি বিগিনারদের জন্য শেখা সহজ? || Is Python Easy to Learn for Beginners || ( Python Guideline for Beginners)

প্রোগ্রামিংয়ের দুনিয়া বিগিনারদের জন্য অনেকটা কঠিন। প্রোগ্রামিংয়ে আগ্রহ থেকে ক্যারিয়ার হিসেবে অনেকেই প্রোগ্রামার হতে চায়। কিন্তু প্রোগ্রামার হওয়ার জার্নিটা এতো সহজ নয়। দিনের পর দিন কোডিং নিয়ে থাকতে থাকতে অনেকেই হাপিয়ে যায়। ঠিক তখন-ই বিগিনারদের এই কোডিংয়ের ঝামেলা থেকে চলে আসে পাইথন। প্রোগ্রামিং ল্যাঙ্গুয়েজের দুনিয়ায় সবচেয়ে সহজ প্রোগ্রামিং ল্যাঙ্গুয়েজ বলা হয় পাইথনকে। কিন্তু এই কথা কি আসলেই সত্যি?  * কেন পাইথন শেখা সহজ? ● পাইথনের ইংরেজি সিনট্যাক্স ● পাইথন লজিকে ফোকাস করে ● পাইথন ফ্রি-তে ইউজ করা

08 October 2024

1 min read

অনলাইন লাইভ স্কিল ডেভেলপমেন্ট প্ল্যাটফর্ম।

ডাউনলোড করুন ওস্তাদ অ্যাপ

কমিউনিটি -এর সাথে কানেক্টেড থাকতে