ব্রুট ফোর্স ডেলাউনে ত্রিভুজ্যালনের অ্যালগরিদম জটিলতা


16

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

অ্যালগরিদম আইনী ট্র্যাঙ্গুলেশন ( T )

ইনপুট । একটি বিন্দু সেট কিছু ত্রিভুজ্যরণ পিআউটপুট । একটি আইনগত ট্রায়াঙ্গুলেশন পিTP
P

যখন T একটি অবৈধ প্রান্ত রয়েছে pipj
Do
যাক pipjpk এবং pipjpl সংলগ্ন দুই ত্রিভুজ হতে pipj
সরান pipj থেকে T , এবং যোগ pkpl পরিবর্তে।
রিটার্ন T

আমি শুনেছি এই অ্যালগরিদম সবচেয়ে খারাপ অবস্থায় সময়ে চলে; তবে এই বিবৃতিটি সঠিক কিনা তা আমার কাছে পরিষ্কার নয়। যদি হ্যাঁ, তবে কেউ এই উপরের সীমাটি কীভাবে প্রমাণ করতে পারেন?O(n2)


5
আপনি উপরে যে ফর্মটি বলেছেন তার মধ্যে এটি সময় নেয় । তবে, স্ট্যাক ব্যবহার করে এটি ( এন 2 ) সময়ে করা যেতে পারে । আপনি এই পৃষ্ঠাগুলির নোটগুলির শেষ পৃষ্ঠাটি দেখতে পারেন । মূল যুক্তিটি হ'ল সর্বাধিক ( এন) থাকতে পারেO(n3)O(n2) প্রান্ত flips। (n2)
রিজওয়ানহদ্দা

2
@ রিজওয়ানহুদ্দা: কেন এটিকে উত্তর দেবেন না?
রাফেল

উত্তর:


8

একটি ডেলাউন ট্রাইঙ্গুলেশনকে প্যারাবোলয়েডে তোলা 2 ডি পয়েন্টের নীচের উত্তল হাল হিসাবে বিবেচনা করা যেতে পারে। সুতরাং, যদি আপনি আপনার 2 ডি পয়েন্ট সেট নেন এবং প্রতিটি বিন্দুতে একটি z -coordinate z i = x 2 i + y 2 1 নির্ধারণ করেন , তবে নীচের উত্তল হাল এর প্রজেকশনটি x y- প্ল্যানে আপনাকে ডেলাউন ত্রিভুজ্যরণ দেয়।(xi,yi)zzi=xi2+y12xy

এই দৃষ্টিকোণটি ব্যবহার করে, কোন প্রান্তটি অবৈধ হওয়ার অর্থ কী? প্রথমত, প্রতিটি ত্রিভুজির টি-এর জন্য আমরা প্যারাবোলিক মানচিত্রটি 3 ডি (ত্রিভুজাকৃত) পৃষ্ঠের জন্য পেতে পারি যা টি তে নামায় । অবশ্যই, এই পৃষ্ঠটি অগত্যা উত্তল নয়, যদি এটি উত্তল হয়, টি ডেলাউনে ত্রিভুজ হয়। সরলভাবে বলতে গেলে, প্রান্তটি ( পি আই , পি জে ) পৃষ্ঠের বেদীটি, একটি অবতল প্রান্তের বাধা। এই প্রান্তটি উল্টানোর সময় আমরা কেবল স্থানীয়ভাবে উত্তোলিত পৃষ্ঠের পরিস্থিতি পরিবর্তন করি। সুতরাং 4 পয়েন্ট তাকান(pi,pj)TTT(pi,pj) । 3 ডি তে তারা একটি টেট্রহেড্রন গঠন করে, যা চতুর্ভুজগুলিতে পরিণত হয়। যেহেতু দুই ত্রিভুজ পি আমি পি পি এবং পি আমি পি পি অবতল প্রান্ত সংজ্ঞায়িত ( পি আমি , পি ) , ত্রিভুজ পি পি পি আমি এবং পি পি পি একটি উত্তল প্রান্ত নির্ধারণ (pi,pj,pk,plpipjpkpipjpl(pi,pj)pkplpipkplpj । অতএব, একটি অবৈধ প্রান্ত উল্টানো উত্তোলনের একটি উত্তল প্রান্ত দ্বারা অবতল প্রান্ত প্রতিস্থাপনের সাথে মিলে যায়। লক্ষ্য করুন যে এই ফ্লিপগুলি অন্য উত্তল প্রান্তগুলি অবতল প্রান্তগুলিতে পরিণত করতে পারে।(pl,pk)

3D Flip interpretation মন্তব্য: চিত্রটি জ্যামিতিকভাবে সঠিক নয় এবং এটি কেবল একটি স্কেচ হিসাবে বিবেচনা করা উচিত।

যাক উল্টানো পর ট্রায়াঙ্গুলেশন হও। এর উত্তোলিত পৃষ্ঠ টি ' পৃষ্ঠের "রয়েছে" টি । এর মাধ্যমে আমার অর্থ এই যে আপনি যদি এক্স ওয়াই বিমান থেকে দুটি পৃষ্ঠকে দেখেন তবে আপনি কেবল টি (বা উভয় পৃষ্ঠের ত্রিভুজগুলি) থেকে ত্রিভুজ দেখতে পাবেন । এছাড়াও আপনি যে বলতে পারে পৃষ্ঠের টি ' আরো ভলিউম encloses। এছাড়াও, প্রান্ত ( পি আমি , পি ) এখন এই ব্যবস্থার সবচেয়ে গুরত্বপূর্ণ "পিছনে" প্রত্যাহার পৃষ্ঠ দ্বারা প্রবর্তিত টি ' যখন থেকে পর্যবেক্ষক এক্স Y সমতল।TTTxyTT(pi,pj)Txy

During the flip sequence we get a sequence of surfaces with strictly increasing volume. Thus, the edge (pi,pj) lies "behind" all these surfaces. Hence, it can never reappear during the flipping process. Since there are only n choose 2 possible edges, we have at most O(n2) flips.

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