ورود

نسخه کامل مشاهده نسخه کامل : جستجو در آرایه های دوبعدی به روش دودویی



rayansys
23-11-2012, 11:25
چطوری میشه تو آرایه های دو بعدی سرچ دودویی کنیم (مثلا یک عدد از کاربر بگیره و بگه تو کدوم خونه ی آرایه دوبعدی قرار داره ) ممنون میشوم جواب بدید لازمش دارم .

hamidrezavictor
23-11-2012, 12:28
سلام من جست و جوی یک بعدیشو بلدم 2 بعدی هم احتمالا با یکم تغییر درست میشه
bsearch(element list[],int len,int num) H
{
int mid, (onsore miyani) limit1=0, (nesfe avale araye) limit2=len-1; (nesfe dovome araye) H
while(limit1<=limit2) H
{ H
mid=(limit1+limit2)/2; H
if(num<list[mid]) H
limit2=mid-1; H
else if(num>list[mid]) H
limit1=mid+1; H
}
کار برنامه اینه که ارایه رو به 2 قسمت تقسیم میکنه اکه عددی که گرفتی کوچکتر از عنصر وسطی بود قسمت اول سرچ میکنه و انتهای ارایه رو وسط ارایه در نظر میگیره و برعکس اگه قسمت دوم بود ابتدای ارایه رو وسط + 1 در نظر میگیره ( نکته: ارایه باید مرتب باشه برای این نوع سرچ)

rayansys
23-11-2012, 13:56
سلام من جست و جوی یک بعدیشو بلدم 2 بعدی هم احتمالا با یکم تغییر درست میشه
bsearch(element list[],int len,int num) H
{
int mid, (onsore miyani) limit1=0, (nesfe avale araye) limit2=len-1; (nesfe dovome araye) H
while(limit1<=limit2) H
{ H
mid=(limit1+limit2)/2; H
if(num<list[mid]) H
limit2=mid-1; H
else if(num>list[mid]) H
limit1=mid+1; H
}
کار برنامه اینه که ارایه رو به 2 قسمت تقسیم میکنه اکه عددی که گرفتی کوچکتر از عنصر وسطی بود قسمت اول سرچ میکنه و انتهای ارایه رو وسط ارایه در نظر میگیره و برعکس اگه قسمت دوم بود ابتدای ارایه رو وسط + 1 در نظر میگیره ( نکته: ارایه باید مرتب باشه برای این نوع سرچ)

فکر کنم این زبان وی بی نباشه (من واسه ویژوال بیسیک نیاز دارم ) ممنون از کمکتون

hamidrezavictor
23-11-2012, 19:12
این برنامه ای که دادم c++ بود

skimoo_m
05-12-2012, 09:05
جستجو باینری در یک آرایه تک بعدی بصورت زیر هست:
(فرض می کنیم اسم آرایه x و تعداد عناصر آن 100 و بدنبال searchkey هستیم و آرایه مرتب شده است)


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

امیدوارم مفید باشه و با توجه به این واسه آرایه دوبعدی هم بنویسی

rayansys
05-12-2012, 10:59
این ماله جستجو در آرایه یک بعدی به روش دودویی (باینری ) هست . ممنون ولی در آرایه دوبعدیش را میخواستم

sosani2007
05-12-2012, 12:48
2 بعدی رو چطوری می خوای مرتب کنی بهم بگو تا بهت بگم

دو دویی بر اساس ارایه اول
دودویی بر اساس ارایه دوم
دودویی بر اساس هر دو

rayansys
07-12-2012, 11:10
من جستجو میخوام نه مرتب سازی