কোন অ্যালগরিদম এবং ডেটা স্ট্রাকচারের কোনও বিকাশকারীকে একেবারে জানা উচিত? [বন্ধ]


24

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

একজন সফল জাভা বিকাশকারী হতে, আমার কি সিএলআরএস-এ দেওয়া সমস্ত উন্নত অ্যালগরিদমগুলি জানা উচিত ?

আপনি যে বিষয়গুলির অগ্রাধিকারের অবতরণ ক্রমে শিখতে হবে সেগুলির একটি তালিকা আপনি কি সুপারিশ করতে পারেন?

আমি অবশ্যই জানতে হবে:

  • খুঁজছেন?
  • শ্রেণীবিভাজন?
  • গ্রাফ / গাছ?

ইত্যাদি?


1
@ জোনসকা: অ্যাফিলিয়েট বিপণন আহ? ;)
চঙ্কি পাঠক

নাহ, ভাল, এসই লিঙ্কটি এর মতো
বদলেছে

উত্তর:


17

অ্যালগরিদমে করম্যানের পরিচিতি কিছু প্রাথমিক তাত্ত্বিক ভিত্তির জন্য একটি ভাল বই।

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


3
আপনাকে যদিও অ্যালগরিদমের সাথে জড়িত ব্যয়গুলি জানতে হবে: উদাহরণস্বরূপ, সম্ভাব্য প্রচুর স্থান ব্যবহার করার সময় প্রস্থের প্রথম অনুসন্ধানটি সবচেয়ে ছোটতম পথটি খুঁজে পাবে।
ফ্র্যাঙ্ক শায়ারার

সম্মতি জানানো হয়েছে, যদিও সবেমাত্র বড় হে স্বরলিঙ্কের স্পিরিট পাওয়া অনেক বেশি এগিয়ে যায়।
জুনাস পুলক্কা

8

আপনি যদি কোনও প্রকারের প্রোগ্রামার হতে চান তবে আপনাকে কিছু মৌলিক ডেটা স্ট্রাকচার (স্ট্যাকস, সারি, অ্যারে, লিঙ্কযুক্ত তালিকাগুলি, হ্যাশ টেবিল, গাছ ইত্যাদি) কিছু বিশদে বুঝতে হবে understand আপনার পক্ষে কাজটি করার জন্য কোনও সংগ্রহের কাঠামো না করে এমন একটি পৃথিবীতে নিজেকে খুঁজে পাওয়া যদি আপনি অন্ততপক্ষে এগুলির কোনওটি নিজের জন্য বাস্তবায়ন করতে পারেন তবে যথেষ্ট।

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


0

অন্যান্য উত্তরগুলি ছাড়াও, আমি কেবল এটি যুক্ত করতে চাই যে অ্যালগরিদমগুলির অধ্যয়নটি কেবল সুপরিচিত কৌশলগুলি (যা এখনও গুরুত্বপূর্ণ) সম্পর্কে জানার জন্য নয়, চিন্তাভাবনা প্রক্রিয়াটি যা ধারণা তৈরিতে চলেছে সে সম্পর্কে বুঝতে সক্ষম হতে বাস্তব জীবনে আপনি যে সমস্যার মধ্যে চলেছেন তার সমাধান, অগত্যা সুপরিচিত নয়।


0

আমি এখন জাভা শিখছি।

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

একজন সফল জাভা বিকাশকারী হতে, আমার কি সিএলআরএস-এ দেওয়া সমস্ত উন্নত অ্যালগরিদমগুলি জানা উচিত?

আপনি যে বিষয়গুলির অগ্রাধিকারের অবতরণ ক্রমে শিখতে হবে সেগুলির একটি তালিকা আপনি আমাকে সুপারিশ করতে পারেন?

আমাকে অবশ্যই কয়েকটি বিষয়ের নাম বলুন যা আমি অবশ্যই জানতে হবে। অনুসন্ধান, বাছাই, গ্রাফ, গাছ ইত্যাদির মতো?

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

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

অ্যালগরিদমিক বিশ্লেষণ (যা অ্যালগরিদম এবং ডেটা স্ট্রাকচারের "মুখস্থ" থেকে পৃথক) এর শিক্ষার সাথে একটি প্রোগ্রামিং ভাষার (আপনার ক্ষেত্রে জাভা) শেখার আলাদা করুন te

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

সেরা ভাবাটি হল অ্যালগরিদমে একটি আন্ডারগ্রাড, 3000-স্তরের কোর্স করার আগে প্রোগ্রামিংয়ে 9-12 ক্রেডিট কোর্স নেওয়া। তা বাদ দিয়ে, আমি উল্লেখ করেছি যে দুটি বইয়ের সাথে স্ব-অধ্যয়ন ভাল বিকল্প হতে পারে (যদিও আত্ম-অধ্যয়ন সবার জন্য নাও হতে পারে))

শুভকামনা!

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.