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