দড়ির জন্য ভ্যান এমডে বোস গাছের সমতুল্য কি আছে?


23

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

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

আমাদের কেবলমাত্র আমাদের ডেটা স্ট্রাকচারে অক্ষর পর্যন্ত সমর্থন করতে হবে (সুতরাং যদি লগ এম = 32 হয় তবে আমরা 4 গিগাবাইট পর্যন্ত এএসসিআইআই অক্ষর সমর্থন করি)। আমরা অনুমোদিত mlogm=32একটি নতুন ডেটা কাঠামো শুরু করার জন্য মি । আমরা নিম্নলিখিত ক্রিয়াকলাপ সমর্থন করতে চাই:মি

  • একটি অবস্থানে অক্ষর ঢোকান মধ্যে হে ( লগ লগ মি ) (এবং যার ফলে 1 প্রতি পরবর্তী চরিত্রের অবস্থান বৃদ্ধি)।আমিO(logলগমি)
  • অবস্থানে একটি অক্ষর বিলোপ মধ্যে হে ( লগ লগ মি )আমিহে(লগলগমি)
  • অবস্থানে চরিত্র ফিরুন মধ্যে হে ( লগ লগ মি )আমিহে(লগলগমি)

সুতরাং, সন্নিবেশ (0, 'এ') এর পরে সন্নিবেশ (0, 'বি') ফলাফল "বা"।

আরও ভাল এটি হবে:

  • কিছু সূচক একটি 'পয়েন্টার' ফিরুন মধ্যে হে ( লগ লগ মি )আমিহে(লগলগমি)
  • একটি 'পয়েন্টার' দেওয়া, এ এই অবস্থানে অক্ষরটি ফিরিয়ে দিন ।হে(1)
  • একটি 'পয়েন্টার' দেওয়া, এ এই অবস্থানের অক্ষরটি সরিয়ে ফেলুন ।হে(1)
  • একটি 'পয়েন্টার' দেওয়া, এ এই অবস্থানে একটি অক্ষর যুক্ত করুন এবং একটি পয়েন্টার নিম্নলিখিত অবস্থানে ফিরিয়ে দিন।হে(1)
  • (alচ্ছিক) একটি 'পয়েন্টার' দেওয়া, এর পরবর্তী / পূর্ববর্তী অক্ষরে একটি 'পয়েন্টার' ফিরিয়ে দিন ।হে(1)

উত্তর:


14

ফ্রেডম্যান এবং সাকস "ডায়নামিক ডেটা স্ট্রাকচারের সেল প্রোব জটিলতা" তে দেখায় যা আপনি Θ ( lg m) এর চেয়ে আরও ভাল করতে পারবেন নাআপনি যে ক্রিয়াকলাপগুলির সন্ধান করছেন তার জন্য মোড়িত সময়। তারা এই সমস্যাটিকে "তালিকার উপস্থাপন" বলে।Θ(এলজিমিএলজিএলজিমি)

ডায়েটস "তালিকা সূচক এবং সাবসেট র‌্যাঙ্কের জন্য অনুকূল অ্যালগরিদমগুলিতে" একটি ডেটা স্ট্রাকচার উপস্থাপন করেছিলেন যা এই সীমাটি অর্জন করে achie


আপনি কি প্রথম নিবন্ধের জন্য একটি লিঙ্ক দিতে পারেন?
রাফেল

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