PDA

View Full Version : دریافت اندیس آرایه



mahdiyar.m
چهارشنبه 05 آبان 1395, 19:42 عصر
سلام دوستان
دارم برنامه با سی پلاس پلاس مینویسم
مثلا یه مقدار داریم میخوایم بدونیم اندیس اون مقدار تو آرایه چیه،چجوری به دستش میاریم؟

mahdiyar.m
پنج شنبه 06 آبان 1395, 18:11 عصر
هیچکسی نمیدونه؟!؟
فکر نکنم سوال سختی باشه!
دوستان اگه اطلاع دارید لطف میکنید پاسخ بدید

Khashayar.Rajaee
پنج شنبه 06 آبان 1395, 19:13 عصر
برای این کار شما باید از روش های search کردن استفاده کنید. یک روش search، خطی است که داده ی مورد جست و جو را با تمام خانه های آرایه مقایسه کرده اگر با آن برابر بود بدین صورت می توان اندیس خانه مورد نظر در آرایه را به دست آورد. یک روش دیگر برای این کار جست و جوی Binary (دودویی) است؛ در این روش ابتدا باید داده های موجود در آرایه را sort کرد سپس داده مورد جست جو با خانه وسط آرایه مقایسه می شود اگه از آن بزرگ تر بود نیمه ی چپ را نادیده گرفته و بالعکس اگر از آن کوچکتر بود نیمه راست آرایه را نادیده می گیرد و به همین ترتیب ادامه می دهیم تا اینکه در نهایت اندیس خانه داده مورد نظر را به دست آوریم. خوبی جست و جوی دودویی در سرعت بسیار بالای آن در برابر جست و جوی خطی می باشد. این تنها دو روش از روش های search کردن است.