বিমানের n পয়েন্টের একটি সেট ও (নলন) সময়ে উত্তল এন বহুভুজ গঠন করে কিনা তা পরীক্ষা করে


13

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


আপনি ও (এন লগ এন) সময়ে উত্তল হলের গণনা করতে পারেন। আপনি কি তার মানে কম সময়ের মধ্যে এটি করা সম্ভব কিনা ?
পার ভোগেনসেন

হ্যাঁ, আমি বিশ্বাস করি যে এই সমস্যার জন্য কিছু রৈখিক সময় অ্যালগরিদম হওয়া উচিত। তবে আমি জানি না কীভাবে
বাবিস সোসুরাকাকিস

4
তিনি ও (নলগন) না ও (নলগন) লিখেছেন, সুতরাং তাঁর প্রশ্নটি সঠিক।
শিব কিন্তালী

1
আমি ছোট ও স্বরলিপিটি ব্যবহার করি সুতরাং প্রশ্নটি এখনও যেমন ধরে আছে
বাবিস সোসুরাকাকিস

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

উত্তর:


17

কমপক্ষে তুলনা / বীজগণিত গাছের মডেলের তুলনায় এটি অসম্ভব বলে মনে হচ্ছে। প্রথম সংজ্ঞা:

একটি বিন্দু সেট যদি কোন বিন্দু উত্তল পদে আছেন পি অবশিষ্ট পয়েন্ট উত্তল সমন্বয় হিসেবে লেখা যেতে পারে পিPPP

এখন, সংখ্যাগুলির একটি সেট সমস্ত স্বতন্ত্র কিনা তা স্থির করতে Ω ( n লগ এন ) সময় লাগে (এটি UNIQUENESS হিসাবে পরিচিত)। N সংখ্যা এক্স এর এমন একটি সেট দেওয়া , সেগুলি পয়েন্টের সেটে মানচিত্র করুন P = { ( x , x 2 ) | x এক্স } যদি কোনও পুনরাবৃত্তি সংখ্যা না থাকে তবে পয়েন্টগুলি উত্তল অবস্থানে থাকে।nΩ(nlogn)nX

P={(x,x2)|xX}.

যদি কোনও পুনরাবৃত্তি সংখ্যা থাকে, তবে এই পুনরাবৃত্তি সংখ্যাটি একটি পয়েন্টের সাথে মিলে যায় যা বাকী পয়েন্টগুলির উত্তল সংমিশ্রণ হিসাবে লেখা যেতে পারে। যথা, পয়েন্টগুলি উত্তল অবস্থানে নেই।

যথা, কোনও পয়েন্ট সেটটি উত্তল অবস্থানে রয়েছে কিনা তা সিদ্ধান্ত নেওয়াই অনন্যতার মতোই শক্ত।


12
X[i](X[i],X[i]2+i/n2)

1
@ বাবিস: ডুপ্লিকেট পয়েন্ট অনুমোদিত না হলে জেফের হ্রাস কাজ করে। হ্রাস দ্বারা উত্পন্ন পয়েন্টগুলি প্রাথমিক অ্যারে কি তা বিবেচনা করেই অনন্য।
বিনায়ক পাঠক

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

বিনয়াকে ধন্যবাদ, আমি জেফের হ্রাস কখনই দেখিনি যেহেতু এটি পূর্ববর্তী মন্তব্যটি লেখার সময় একই সাথে পোস্ট করা হয়েছিল যা আমি
উপরোক্তটির

2
সুরেশ, আমি "স্ট্যান্ডার্ড মডেল" কথাটির সাথে একমত নই। ওয়ার্ড র‌্যামটি হ'ল এটিই :) এটি এমন একটি মডেল যা একটি বাস্তব কম্পিউটারের সাথে সান্নিধ্যের সাথে মেলে এবং আমরা বেশিরভাগ টিসিএসে অ্যালগরিদম বিশ্লেষণ করতে ব্যবহার করি। জ্যামিতি রিয়েল র‌্যাম ব্যবহার করার জন্য একটি ব্যতিক্রম প্রার্থনা করেছে যাতে আমাদের নির্ভুলতার সমস্যাগুলি মোকাবেলার দরকার না হয়। তবে এটি "স্ট্যান্ডার্ড মডেল" নয়।
মিহাই

-1

O(nlogn)

আপনি যখন বিন্দুগুলির ক্রমটি জানতে পারবেন তবে অনুক্রমের প্রতিটি বিন্দু থেকে পরবর্তী বিন্দুতে কোণটি একঘেয়ে হতে হবে। এটি একটি প্রয়োজনীয় শর্ত গঠন করে এবং, আমি মনে করি, এটি পর্যাপ্ত একটি।

অভ্যন্তরীণ পয়েন্টটি পাওয়া পাঠকের জন্য অনুশীলন হিসাবে বাকি রয়েছে।


O(nlogn)


আপনি সম্ভবত তাঁর ও (এন লগ এন) কে ও (এন লগ এন) হিসাবে অনেকটা ভুল লিখেছেন I যাইহোক, আপনার বর্ণিত অ্যালগরিদমটি ভ্রূণের আকারে উপহার মোড়ানো। আপনার আসলে কোনও অভ্যন্তর বিন্দু ব্যবহার করার দরকার নেই; আপনি সীমানায় একটি পয়েন্ট ব্যবহার করতে পারেন, উদাহরণস্বরূপ নূন্যতম x স্থানাঙ্ক সহ একটি পয়েন্ট।
প্রতি ভোগেনসেন

O(nlogn)o()

মুল বক্তব্যটি হ'ল প্রচুর পরিমাণে উত্তল হাল অ্যালগরিদম রয়েছে যা ও (এন লগ এন) এ চলে। আপনার অ্যালগরিদম মূলত প্লেইন পুরানো উপহার মোড়ানো। তিনি কিছু দ্রুত চেয়েছিলেন, যেমন লিনিয়ার সময়। অন্যান্য প্রতিক্রিয়া দেখুন।
প্রতি ভোগেনসেন

1
আপনার সম্পাদনা সম্পর্কিত, যদি আপনি নিজের উপরে গৃহীত উত্তরটি দেখতে পারেন তবে আপনি দেখতে পাবেন যে সমস্যাটি উপাদানটির স্বতন্ত্রতার সমতুল্য, যার একটি ও (এন লগ এন) নিম্ন সীমা রয়েছে।
প্রতি ভোগেনসেন

2
@ বিবিএস: আমি আশঙ্কা করছি যে স্যারিল হার-পেলেদের উত্তর সম্পর্কে আপনার কিছু ভুল ধারণা রয়েছে। হ্রাস অন্যান্য দিক থেকে নয়, উত্তোলনের অবস্থান পরীক্ষার স্বতন্ত্রতা থেকে is এটি হ'ল, সারিল (এবং জেফই) বলেছিল যে আপনি যদি সংখ্যার একটি সেট দেওয়া হয় এবং স্বতন্ত্রতা পরীক্ষা করতে চান তবে আপনি এটিকে বিন্দুগুলির একটি সংকেতে রূপান্তর করতে এবং উত্তল অবস্থানের পরীক্ষার জন্য কোনও অ্যালগরিদম ব্যবহার করতে পারেন।
Tsuyoshi Ito
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.