আমি আসলে নিশ্চিত নই যে "গোলকধাঁধা" সঠিক শব্দটি। মূলত ব্যবহারকারীরা Room
4 টি দরজা (এন, এস, ই এবং ডাব্লু) রয়েছে এমন একটিতে শুরু করেন । তারা যে কোনও দিকে যেতে পারে এবং পরবর্তী প্রতিটি ঘরে 1 থেকে 4 দ্বার পর্যন্ত যে কোনও জায়গায় অন্য ঘর থাকে যা অন্য কক্ষে যায়।
"গোলকধাঁধা" আকারে সীমাহীন হওয়ার কথা এবং কক্ষগুলি সরানোর সাথে সাথে বাড়ার কথা। এখানে একটি সীমাবদ্ধ সংখ্যা রয়েছে Rooms
, তবে উপলব্ধ সংখ্যাটি গতিশীল এবং পরিবর্তিত হতে পারে।
আমার সমস্যাটি হ'ল, আমি এই ধরণের প্যাটার্নের জন্য সেরা ডেটা কাঠামোর বিষয়ে নিশ্চিত নই
আমি প্রথমে কেবলমাত্র একটি [এক্স] [এক্স] অ্যারে Room
অবজেক্ট ব্যবহার করার বিষয়ে ভেবেছিলাম , তবে আমি অবশ্যই এটি এড়াতে চাইছি যেহেতু জিনিসটি যে কোনও দিকে বাড়ার কথা, এবং কেবলমাত্র "ঘুরে দেখানো" ঘরগুলি তৈরি করা উচিত।
অন্য চিন্তাভাবনাটি ছিল প্রতিটি Room
ক্লাসে Room
এন, এস, ই, এবং ডাব্লু এর জন্য 4 টি সংযুক্ত বৈশিষ্ট্য রয়েছে এবং কেবল আগেরটির সাথে লিঙ্ক করা আছে Room
, তবে এই সমস্যাটি আমি বুঝতে পারি না যে কোনও ব্যবহারকারীর ঘরে goesুকে গেলে কীভাবে চিহ্নিত করতে পারি একটি সংলগ্ন ঘর ইতিমধ্যে "নির্মিত"
উদাহরণ স্বরূপ,
--- --- ---------- | | | | 5 4 শুরু করুন | | | | --- --- --- --- --- --- ---------- --- --- | | | | | | | 1 2 3 | | | | | | --- --- --- --- ----------
যদি ব্যবহারকারী শুরু> 1> 2> 3> 4> 5 থেকে সরান, তবে Room
# 5 টি জানতে হবে যে ডাব্লু শুরুর ঘর রয়েছে, এস ঘর # 2 এবং এই ক্ষেত্রে উপলব্ধ না হওয়া উচিত, এবং এন হয় হয় একটি হতে পারে নতুন Room
বা একটি প্রাচীর (কিছুই নেই)।
সম্ভবত আমার অ্যারে এবং লিঙ্কযুক্ত কক্ষগুলির একটি মিশ্রণ প্রয়োজন, অথবা সম্ভবত আমি এটি ভুল উপায়ে দেখছি।
এই ধরণের "ধাঁধাঁ" এর জন্য ডেটা স্ট্রাকচার তৈরি করার আরও ভাল কোনও উপায় আছে কি? বা আমি আমার বর্তমান চিন্তা প্রক্রিয়াটি নিয়ে সঠিক পথে রয়েছি, এবং কেবল কয়েকটি টুকরো তথ্য মিস করছি?
(আপনি যদি আগ্রহী হন তবে প্রকল্পটি মঞ্চকিন কোয়েস্টের মতো একটি খেলা )