কৃসকলের অ্যালগোরিদমের এই ঘন সংস্করণটি কি সুপরিচিত?


15

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

আমি আমার ব্লগে সি ++ কোড এবং বেঞ্চমার্ক সহ অ্যালগরিদম সম্পর্কে কিছুটা পোস্ট করেছি , তবে সাধারণ ধারণাটি এখানে:

  • প্রতিটি সংযুক্ত উপাদানগুলির জন্য একটি প্রতিনিধি নোড বজায় রাখুন। প্রাথমিকভাবে, সমস্ত নোড তাদের প্রতিনিধিত্ব করে।

  • dist[i]এমন কোনও ভেক্টর বজায় রাখুন যাতে প্রতিটি উপাদানগুলির জন্য iসবচেয়ে হালকা উপাদান-ক্রসিং প্রান্তের ঘটনা ঘটে i

  • পার্টিশনগুলি অতিক্রম করে এমন সবচেয়ে হালকা প্রান্তটি সন্ধান করার সময়, লিনিয়ার সময়ে কেবল iওজন হ্রাস করে পান dist[i]

  • cicjAAi,k=min{Ai,k,Aj,k}kij

সবচেয়ে হালকা প্রান্তের চুক্তি এবং বলা প্রান্তের সন্ধান উভয়ই রৈখিক সময়ে করা যায়। আমরা এমটিএসটি খুঁজে পেতে এই বার করি। আমরা এমএসটিতে কোন প্রান্তটি যুক্ত করতে চাই তা খুঁজে পেতে আসলে একটু বুককিপিংয়ের প্রয়োজন, তবে জটিলতা বাড়ায় না। সুতরাং রানটাইমটি হ'ল । বাস্তবায়ন লুপগুলির জন্য মাত্র একটি দম্পতি।Θ ( n 2 )এন-1Θ(এন2)

কৃসকলের এই সংস্করণটি কি সাহিত্যে সুপরিচিত?

উত্তর:


19

আমি সময় অর্জনের জন্য এই নির্দিষ্ট পদ্ধতি সম্পর্কে নিশ্চিত নই , তবে ( এন 2 ) সময়ে কুষ্কাল সম্পাদনের জন্য দুটি পৃথক পদ্ধতি আমার কাগজে "ফাস্ট হায়ারারিকিকাল ক্লাস্টারিং এবং গতিশীল নিকটতম জোড়াগুলির অন্যান্য অ্যাপ্লিকেশন" দেওয়া হয়েছে (( সোডা 1998, আরএক্সিভি: সিএসডিএস / 9912014, এবং জে পরীক্ষামূলক অ্যালগোরিদম 2000):হে(এন2)হে(এন2)

  1. পরিবর্তে প্রাইম ij ডিজকস্ট্রা – জার্নাক ব্যবহার করুন এবং তারপরে ক্রুসকল যে সন্নিবেশ সিকোয়েন্সটি দেবেন সেগুলি পেতে প্রান্তগুলি বাছাই করুন, বা

  2. কাগজে বর্ণিত কোয়াডট্রি নিকটতম-জোড়া ডেটা স্ট্রাকচারটি ব্যবহার করুন, ক্রুসকলকে একটি স্ট্যান্ডার্ড অ্যাগ্রোমেটিভ ক্লাস্টারিং পদ্ধতি হিসাবে দেখেন যেখানে আমরা প্রতিটি ধাপে নিকটতম দুটি ক্লাস্টারকে একটি সুপারক্লাস্টারে রূপান্তর করি যেখানে দুটি ক্লাস্টারকে সংযুক্ত সংক্ষিপ্ত প্রান্তের দৈর্ঘ্য হিসাবে সংজ্ঞায়িত করা হয় "নিকটতম" ।

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

হে(এন2)হে(এন2)হে(এন)

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