বিভিন্ন ডেটা স্ট্রাকচারের ব্যবহারিক ব্যবহার [বন্ধ]


102

ডেটা স্ট্রাকচার সম্পর্কে অনেক কথা আছে, তবে আমি সেখানে ডেটা স্ট্রাকচারের একটি সাধারণ তালিকা এবং তাদের ব্যবহারিক ব্যবহার খুঁজে পাচ্ছি না। আমি একটি সাক্ষাত্কারের জন্য অধ্যয়ন করার চেষ্টা করছি এবং আমি মনে করি এটি আরও অনেকের সাথে আমার সহায়তা করবে। আমি এই জাতীয় কিছু খুঁজছি:

ডেটা স্ট্রাকচার - উদাহরণ / এর জন্য ব্যবহৃত

হ্যাশ টেবিল - দ্রুত ডেটা লুক ... তারপরে একটি উদাহরণ দিন

অ্যারে - ...

বাইনারি ট্রি - ...

যদি কোথাও এর মতো কোনও উত্স থাকে তবে দয়া করে আমাকে জানান।

ধন্যবাদ!

সম্পাদনা: আমার অর্থ উইকিপিডিয়া ভাল এবং সমস্ত, তবে বেশিরভাগ পৃষ্ঠাগুলিতে তারা বাস্তবে ব্যবহারিক ব্যবহারের তালিকা দেয় না। আমি এর থেকেও বেশি কিছু খুঁজছি।

উত্তর:


96

পূর্বে স্ট্যাকওভারফ্লোতে অনুরূপ প্রশ্নে তালিকাটি পাওয়া গেছে:

হ্যাশ টেবিল - দ্রুত ডেটা দেখার জন্য ব্যবহৃত - সংকলকগুলির জন্য প্রতীক টেবিল, ডাটাবেস সূচীকরণ, ক্যাশে, স্বতন্ত্র ডেটা উপস্থাপনা।

ট্রাই - অভিধান, যেমন একটি স্বয়ংক্রিয়তা এবং বানান-পরীক্ষার জন্য একটি মোবাইল টেলিফোনে পাওয়া যায়।

প্রত্যয় গাছ - বেশিরভাগ ওয়ার্ড প্রসেসরে ব্যবহৃত দ্রুত পূর্ণ পাঠ্য অনুসন্ধান।

স্ট্যাক - ওয়ার্ড প্রসেসরে পুনরায় অপারেশন, এক্সপ্রেশন মূল্যায়ন এবং সিনট্যাক্স পার্সিং, জেভিএম এর মতো অনেক ভার্চুয়াল মেশিন স্ট্যাক ওরিয়েন্টেড।

সারি - পরিবহন এবং অপারেশন গবেষণা যেখানে বিভিন্ন সত্তা সংরক্ষণ করা হয় এবং পরে প্রক্রিয়া করার জন্য অনুষ্ঠিত হয় অর্থাৎ কাতারে একটি বাফারের কার্য সম্পাদন করে।

অগ্রাধিকার সারি - কার্নেলের মধ্যে প্রক্রিয়া নির্ধারণ

গাছ - পার্সার, ফাইল সিস্টেম m

মূলা গাছ - আইপি রাউটিং টেবিল

বিএসপি ট্রি - 3 ডি কম্পিউটার গ্রাফিক্স

গ্রাফ - সামাজিক নেটওয়ার্কিং সাইটগুলিতে সংযোগ / সম্পর্ক, রাউটিং, যোগাযোগের নেটওয়ার্ক, ডেটা সংগঠন ইত্যাদি

গাদা - লিস্পে গতিশীল মেমরির বরাদ্দ

এটি মূলত আরভি প্রদীপ পোস্ট করেছেন উত্তর

কিছু অন্যান্য, কম দরকারী লিঙ্ক:

অ্যাপ্লিকেশনগুলি কেবলমাত্র কিছু ডেটা স্ট্রাকচারের জন্য তালিকাভুক্ত

ভাল সংক্ষিপ্ত এবং প্রাসঙ্গিক দ্বারা অ্যাপ্লিকেশনকে কেন্দ্র করে নয় Not


1
আপনার প্রথম লিঙ্কটি নষ্ট হয়েছে
ড্যান

আপনাকে ধন্যবাদ, @ ড্যানবিউলিউ আমি মৃত লিঙ্কটি সরিয়েছি।
এমএক্সএমএলএলএন

1
খুব সুন্দর সংক্ষিপ্তসার। সম্ভবত ব্যবহারের তালিকাটি কখনই শেষ হয় না, তবে পয়েন্টটি পাওয়া যায়।
নিক এল।

1
পূর্বাবস্থায় ফেরানো / পুনরায় করা কি সত্যিই একটি স্ট্যাক হবে? যদি পূর্বেটিকে পূর্বে স্ট্যাকের শীর্ষে ছেড়ে যায় তবে আপনি আবার করতে পারবেন না।
টনি এল।

5
@TonyL। আমি জানি এটি একটি পুরানো প্রশ্ন, তবে আমি বিশ্বাস করি যে 2 টি স্ট্যাক ব্যবহার করা হয়েছে বা পূর্বাবস্থায় ফিরুন / পুনরায় করুন। আপনি যখন কোনও ক্রিয়া পূর্বাবস্থায় ফিরিয়ে আনেন তখন এটি অ্যাকশন স্ট্যাকটি পপআপ করে রেডো স্ট্যাকের উপরে স্থাপন করা হয়। আপনি যদি পুনরায় করেন, তবে আপনি এটি পুনরায় স্ট্যাকের বাইরে ফেলে দিন এবং এটিকে ক্রিয়া স্ট্যাকের দিকে ঠেলাবেন। আমার পরিভাষাটি ভুল হতে পারে তবে এর উদাহরণও এখানে থাকা উচিত।
রিক হেন্ডারসন

14

আপনারা যেমন করেন তেমন নৌকোয় আমিও আছি। টেক সাক্ষাত্কারের জন্য আমার অধ্যয়ন করা দরকার, তবে একটি তালিকা মুখস্থ করা সত্যিই সহায়ক নয়। আপনার যদি বাঁচার জন্য 3-4 ঘন্টা থাকে, এবং আরও গভীর ডাইভ করতে চান তবে আমি আপনাকে পরীক্ষা করে দেখার পরামর্শ দিই

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

ভিডিওতে ডুডের ডেটা স্ট্রাকচারের উপর প্রচুর বক্তৃতা রয়েছে। মূর্খ আঁকাগুলি, বা কিছুটা স্বাচ্ছন্দ্যে কিছু মনে করবেন না। আপনাকে কোন ডাটা স্ট্রাকচারটি নির্বাচন করবেন তা বোঝার দরকার নেই, তবে লোকে যখন ডেটা স্ট্রাকচার সম্পর্কে চিন্তা করে তখন কিছু অন্যান্য বিষয় বিবেচনা করতে হবে:

  • সাধারণ ডেটা স্ট্রাকচারের উপকারিতা এবং বিপরীতে
  • কেন প্রতিটি তথ্য কাঠামো বিদ্যমান
  • এটি আসলে স্মৃতিতে কীভাবে কাজ করে
  • সুনির্দিষ্ট প্রশ্ন / অনুশীলন এবং সর্বাধিক দক্ষতার জন্য কোন কাঠামোটি ব্যবহার করবেন তা স্থির করে
  • lucid বিগ 0 ব্যাখ্যা

আপনার আগ্রহী হলে আমি গিথুবে নোটও পোস্ট করেছিলাম।


7

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

এখন, এই ডেটা ধরণেরগুলি যৌক্তিকভাবে নির্মিত এবং অ্যাক্সেস করার উপায়ের ভিত্তিতে আদিম, বিমূর্ত, সংমিশ্রণে বিভক্ত করা যেতে পারে।

  • আদিম ডেটা স্ট্রাকচারগুলি সমস্ত ডেটা স্ট্রাকচারের জন্য প্রাথমিক বিল্ডিং ব্লক, তাদের জন্য তাদের অবিচ্ছিন্ন মেমরি থাকে: বুলিয়ান, চর, ইনট, ফ্লোট, ডাবল, স্ট্রিং।
  • যৌগিক ডেটা স্ট্রাকচার হ'ল ডেটা স্ট্রাকচার যা একাধিক আদিম ডাটা টাইপস ক্লাস, স্ট্রাকচার, ইউনিয়ন, অ্যারে / রেকর্ডের সমন্বয়ে গঠিত।
  • বিমূর্ত ডেটাটাইপগুলি হ'ল সংমিশ্রিত ডেটাটাইপস যা তাদের দক্ষতার সাথে অ্যাক্সেস করার উপায় রয়েছে যা একটি অ্যালগরিদম বলে। যেভাবে ডেটা অ্যাক্সেস করা হয় তার উপর নির্ভর করে ডেটা স্ট্রাকচারগুলি লিনিয়ার এবং নন-লিনিয়ার ডেটাটাইপগুলিতে বিভক্ত হয়। লিঙ্কযুক্ত তালিকাগুলি, স্ট্যাকগুলি, সারিগুলি ইত্যাদি লিনিয়ার ডেটা ধরণের। হিপস, বাইনারি ট্রি এবং হ্যাশ টেবিল ইত্যাদি অ লিনিয়ার ডেটা টাইপ।

আমি আশা করি এটি আপনাকে ডুবুরিতে সহায়তা করবে।


6

স্কিয়েনার দুর্দান্ত বই " অ্যালগরিদম ডিজাইন ম্যানুয়াল" -তে অ্যালগরিদম এবং ডেটা স্ট্রাকচারের একটি বিশাল সংগ্রহশালা রয়েছে।

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

আপনার সমস্যাটি সমাধানের জন্য আপনি যদি সেরা ডেটা কাঠামোটি সন্ধান করেন তবে বইটি আপনার ডেস্কে রাখা দুর্দান্ত। এটি সাক্ষাত্কার প্রস্তুতির জন্যও খুব সহায়ক।

আর একটি দুর্দান্ত উত্স হ'ল এনআইএসটি ডিকশনারি অফ ডেটা স্ট্রাকচার এবং অ্যালগরিদম


4

তথ্য কাঠামোর আরও কয়েকটি ব্যবহারিক প্রয়োগ

লাল-কালো গাছ (ঘন ঘন সন্নিবেশ / মুছে ফেলা এবং কয়েকটি অনুসন্ধানের সময় ব্যবহৃত হয়) - কে-মানে লাল কালো গাছ ব্যবহার করে ক্লাস্টারিং, ডেটাবেসগুলি, সরল-মনের ডাটাবেস, অভিধানের ভিতরে শব্দগুলি অনুসন্ধান করা, ওয়েবে অনুসন্ধান করা

এভিএল ট্রি (আরও অনুসন্ধান এবং সন্নিবেশ / মোছার কম) - ডেটা বিশ্লেষণ এবং ডেটা মাইনিং এবং অ্যাপ্লিকেশনগুলিতে আরও অনুসন্ধান যুক্ত

ন্যূনতম গাদা - ক্লাস্টারিং অ্যালগরিদম


3

বিভিন্ন ডেটা স্ট্রাকচারের যে কোনও র‌্যাঙ্কিং কমপক্ষে আংশিকভাবে সমস্যার প্রসঙ্গে আবদ্ধ থাকবে। এটি কীভাবে অ্যালগরিদমের সময় এবং স্থানের পারফরম্যান্স বিশ্লেষণ করতে শিখতে সহায়তা করবে। সাধারণত, "বিগ ও স্বরলিপি" ব্যবহৃত হয়, যেমন বাইনারি অনুসন্ধান হল ও (লগ এন) সময়ে হয়, যার অর্থ একটি উপাদান অনুসন্ধান করার সময় হল উপাদানগুলির সংখ্যার লগ (বেস 2 তে, স্পষ্টভাবে)। স্বজ্ঞাতভাবে, যেহেতু প্রতিটি পদক্ষেপ বাকী অর্ধেক তথ্য অপ্রাসঙ্গিক হিসাবে অস্বীকার করে, তাই উপাদানগুলির সংখ্যা দ্বিগুণ করে সময়টি 1 ধাপে বাড়িয়ে তুলবে। (বাইনারি অনুসন্ধানের স্কেলগুলি আরও ভাল। এছাড়াও, নোট করুন যে বড়-ও স্বরলিপি ধ্রুবক কারণগুলিকে উপেক্ষা করে - ছোট ডেটা সেটগুলির জন্য, একটি O (n log 2) অ্যালগরিদম এখনও একটি ও (এন * লগ এন) অ্যালগরিদমের চেয়ে দ্রুত হতে পারে যার উচ্চতর ধ্রুবক গুণক রয়েছে।

সময় এবং স্থানের পাশাপাশি, অন্যান্য বৈশিষ্ট্যগুলির মধ্যে রয়েছে যে কোনও ডেটা স্ট্রাকচার বাছাই করা হয়েছে (গাছ এবং স্কিপলিস্টগুলি সাজানো হয়, হ্যাশ টেবিলগুলি নয়), অধ্যবসায় (বাইনারি গাছগুলি পুরানো সংস্করণগুলি থেকে পয়েন্টারগুলি পুনরায় ব্যবহার করতে পারে, যখন হ্যাশ টেবিলগুলি পরিবর্তিত হয়) ইত্যাদি etc.

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

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

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