PDA

View Full Version : مبتدی: انواع جستجو در زبان C++‎



kooroush
پنج شنبه 26 فروردین 1389, 11:04 صبح
با سلام خدمت تمام اساتید و برنامه نویسان محترم سایت !
تو خود وبسایت جستجو کردم چیزی پیدا نکردم اگه کسی چیزی پیدا کرد لطفا معرفی کنه !مقاله ای یا سورسی یا ...
می خواستم ببینم چند نوع جستجو تو این زبان داریم ؟ و اگه کسی مثالی در این زمینه داره یا مقاله ای داره لطفا ضمیمه کنه !!!
با تشکر !:افسرده:

sh4mid
پنج شنبه 26 فروردین 1389, 11:36 صبح
منظورت اینه

void * bsearch ( const void * key, const void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const void * ) );بالایی استاندارده پایینی ها هم Microsoft به C اضافه کرده


void *bsearch(
const void *key,
const void *base,
size_t num,
size_t width,
int ( __cdecl *compare ) ( const void *, const void *)
);

void *bsearch_s(
const void *key,
const void *base,
size_t num,
size_t width,
int ( __cdecl *compare ) ( void *, const void *, const void *),
void * context
);

void *_lsearch(
const void *key,
void *base,
unsigned int *num,
unsigned int width,
int (__cdecl *compare)(const void *, const void *)
);

void *_lsearch_s(
const void *key,
void *base,
unsigned int *num,
size_t size,
int (__cdecl *compare)(void *, const void *, const void *),
void * context
);

void *_lfind(
const void *key,
const void *base,
unsigned int *num,
unsigned int width,
int (__cdecl *compare)(const void *, const void *)
);

void *_lfind_s(
const void *key,
const void *base,
unsigned int *num,
size_t size,
int (__cdecl *compare)(void *, const void *, const void *),
void * context
);که تو search.h تعزیف شده

Salar Ashgi
جمعه 27 فروردین 1389, 22:27 عصر
برای جستجو روش های متفاوتی هست ، که با سرچ تو گوگل مطالب خوبی رو بدست میارین .

ولی رایج ترینش : جستجوی دودویی => در یک آرایه مرتب با پیچیدگی O(logn و جستجوی خطی

=> آرایه میتواند مرتب نباشد ، با پیچیدگی O(n

Binary Search , Linear Search

miladfarji
یک شنبه 20 اسفند 1391, 11:42 صبح
با سلام خدمت تمام اساتید و برنامه نویسان محترم سایت !
تو خود وبسایت جستجو کردم چیزی پیدا نکردم اگه کسی چیزی پیدا کرد لطفا معرفی کنه !مقاله ای یا سورسی یا ...
می خواستم ببینم چند نوع جستجو تو این زبان داریم ؟ و اگه کسی مثالی در این زمینه داره یا مقاله ای داره لطفا ضمیمه کنه !!!
با تشکر !:افسرده:
int LinearSearch(int [], int, int);

int mian()
{
int n;
int A[100];
cout << "Enter size of array : ";
cin >> n;
for ( int i = 0 ; i < n ; i++ )
{
cout << "number " << i + 1 << " is : ";
cin >> A[i];
}
int item, location;

cout << "Enter the item you are searching for: ";
cin >> item;
location = LinearSearch(A, n, item);
if (location > -1)
cout << "The item was found at index location " << location << endl;
else
cout << "The item was not found in the list\n";
return 0;
}
int LinearSearch(int list[], int size, int key)
{
for (int i = 0; i < size; i++)
{
if (list[i] == key)
return i;
}
return -1;
}