(সাজানো ডেটার জন্য আলাদা প্রশ্ন হিসাবে এখানে উত্তর দেওয়া হচ্ছে না))
যদি ডাটা ছিল সাজানো, আপনি ব্যবহার করতে পারে VLOOKUP
সঙ্গে range_lookup
যুক্তি TRUE
(অথবা বাদ দেওয়া, ডিফল্ট এটা যেহেতু), যা আনুষ্ঠানিকভাবে "আনুমানিক ম্যাচের জন্য অনুসন্ধান" যেমন এক্সেল জন্য বর্ণনা করা হয়েছে।
অন্য কথায়, বাছাই করা ডেটার জন্য:
- প্রথম যুক্তিটি
FALSE
ফেরত দেওয়ার জন্য শেষ যুক্তিটি সেট করে এবং
- সর্বশেষ যুক্তিটি শেষ মানটি প্রদান করে
TRUE
returns
এটি মূলত অননুমোদিত এবং অস্পষ্ট, তবে ভিসি ক্যালকের (১৯৯ 1979) তারিখ এবং আজ কমপক্ষে মাইক্রোসফ্ট এক্সেল, লিব্রেফিস ক্যাল্ক এবং গুগল শিটগুলিতে রয়েছে। চূড়ান্ত প্যারামিটার না থাকাকালীন LOOKUP
এটি ভিসিক্যালক (এবং সেখানে VLOOKUP
এবং HLOOKUP
) এর প্রাথমিক প্রয়োগের কারণে ঘটে । বাইনারি অনুসন্ধানের দ্বারা মানটি পাওয়া যায় , সমেত বাম আবদ্ধ এবং একচেটিয়া ডান বাউন্ড (একটি সাধারণ এবং মার্জিত বাস্তবায়ন) ব্যবহার করে, যা এই আচরণের ফলাফল।
প্রযুক্তিগতভাবে এর অর্থ হল যে একজন প্রার্থীর ব্যবধানের সাথে অনুসন্ধান শুরু করে [0, n)
, n
অ্যারের দৈর্ঘ্যটি কোথায় , এবং লুপের আক্রমণকারী অবস্থাটি হ'ল A[imin] <= key && key < A[imax]
(বামদিকের চৌম্বকটি <= লক্ষ্য, ডান আবদ্ধ, যা শেষের পরে শুরু হয়) > লক্ষ্য; বৈধকরণের জন্য হয় হয় শেষের বিন্দুতে মানগুলি আগে পরীক্ষা করে, বা পরে ফলাফলটি পরীক্ষা করে দেখুন) এবং ধারাবাহিকভাবে দ্বিখণ্ডিত করা এবং যে কোনও পক্ষই এই আক্রমণকারীটিকে সংরক্ষণ করে: বামপন্থার দ্বারা এক পক্ষ থাকবে, যতক্ষণ না আপনি 1 পদের সাথে ব্যবধানে পৌঁছান [k, k+1)
, এবং অ্যালগরিদম তারপরে ফিরে আসে k
। এটি কোনও সঠিক মিল (!) হওয়া উচিত নয়: এটি নীচের থেকে কেবল নিকটতম ম্যাচ। সদৃশ ম্যাচের ক্ষেত্রে, শেষের ম্যাচটি ফিরে আসার ফলে এটির পরবর্তী মানটি আরও বেশি হওয়া দরকারকী (বা অ্যারের শেষ) এর চেয়ে বেশি। সদৃশগুলির ক্ষেত্রে আপনার কিছু আচরণ প্রয়োজন এবং এটি যুক্তিসঙ্গত এবং কার্যকর করা সহজ।
এই আচরণটি এই পুরানো মাইক্রোসফ্ট নলেজ বেস প্রবন্ধে (জোর দেওয়া) স্পষ্ট করে বলা হয়েছে: "এক্সএল: একটি অ্যারেতে প্রথম বা শেষ ম্যাচটি কীভাবে ফিরে যাবে" ( Q214069 ):
বাছাই করা ডেটার অ্যারের মধ্যে একটি মান অনুসন্ধান করতে এবং অন্য অ্যারের মধ্যে সেই অবস্থানে থাকা সম্পর্কিত মানটি ফিরিয়ে দিতে আপনি LOOKUP () ফাংশনটি ব্যবহার করতে পারেন। যদি অনুসন্ধান মানটি অ্যারের মধ্যে পুনরাবৃত্তি হয় তবে এটি শেষ ম্যাচের মুখোমুখি হয় । এই আচরণটি VLOOKUP (), HLOOKUP (), এবং LOOKUP () ফাংশনের জন্য সত্য।
কিছু স্প্রেডশিটগুলির জন্য অফিসিয়াল ডকুমেন্টেশন অনুসরণ করে; উভয়ই "শেষ ম্যাচ" আচরণের বিবরণ দেওয়া হয়নি, তবে এটি গুগল শিটের ডকুমেন্টেশনে অন্তর্ভুক্ত রয়েছে:
মাইক্রোসফট এক্সেল
'সত্য' অনুমান সারণীর প্রথম কলামটি পারেন সংখ্যাসূচকভাবে বা বর্ণানুক্রমে অনুসারে বাছাই করা হয়, এবং তারপর অনুসন্ধান করবে নিকটতম মান ।
গুগল পত্রক :
যদি বাদ দেওয়া is_sorted
হয় TRUE
বা বাদ দেওয়া হয় তবে নিকটস্থ মিলটি ( অনুসন্ধান কী বা এর চেয়ে কম বা সমান ) ফিরে আসবে