جستجوی خطی در ++c :

جستجوی خطی یکی از روش‌های پرکاربرد در برنامه‌نویسی است که در زبان برنامه‌نویسی C++ نیز قابل استفاده است. در این روش، برای جستجوی یک عنصر مشخص در یک آرایه، از یک حلقه تکرار استفاده می‌شود تا تمامی عناصر آرایه به صورت ترتیبی بررسی شوند. اگر عنصر مورد نظر در آرایه وجود داشته باشد، مکان آن در آرایه برگردانده می‌شود و در غیر این صورت مقدار -1 برگردانده می‌شود.

برای پیاده‌سازی جستجوی خطی در زبان برنامه‌نویسی C++، می‌توان از یک تابع استفاده کرد که دو پارامتر دریافت کند: آرایه مورد نظر و اندیس عنصری که باید جستجو شود. به طور کلی، کد این تابع به صورت زیر است:

“`cpp
int linearSearch(int arr[], int n, int x)
{
for(int i = 0; i < n; i++)
{
if(arr[i] == x)
return i;
}
return -1;
}
“`

در این کد، آرایه arr با اندیس n و عنصر مورد نظر x به عنوان پارامترها دریافت می‌شوند. سپس با استفاده از یک حلقه تکرار، تمامی عناصر آرایه بررسی می‌شوند. اگر عنصر مورد نظر در آرایه وجود داشته باشد، مکان آن به عنوان نتیجه برگردانده می‌شود. در غیر این صورت، مقدار -1 برگردانده می‌شود.

برای استفاده از تابع جستجوی خطی، کافی است آرایه مورد نظر و اندیس عنصر مورد نظر را به تابع پاس داد و نتیجه را دریافت کنید. به عنوان مثال، می‌توانید از کد زیر برای استفاده از تابع جستجوی خطی استفاده کنید:

“`cpp
int main()
{
int arr[] = {2, 5, 8, 12, 16, 23, 38, 56, 72, 91};
int n = sizeof(arr) / sizeof(arr[0]);
int x = 23;

int result = linearSearch(arr, n, x);

if(result == -1)
cout << “عنصر مورد نظر یافت نشد” << endl;
else
cout << “عنصر مورد نظر در اندیس ” << result << ” قرار دارد” << endl;

return 0;
}
“`

در این مثال، آرایه arr شامل اعداد صحیح است و عنصر مورد نظر x برابر با 23 است. با استفاده از تابع linearSearch، عنصر 23 در آرایه بررسی می‌شود. چون این عنصر در اندیس 5 قرار دارد، نتیجه از تابع برابر با 5 خواهد بود و پیام “عنصر مورد نظر در اندیس 5 قرار دارد” چاپ می‌شود.

جستجوی خطی در زبان برنامه‌نویسی C++ یک روش ساده و موثر برای جستجو در یک آرایه است. با استفاده از این روش، می‌توانید عناصر مورد نظر خود را در آرایه‌های بزرگ و کوچک جستجو کنید و مکان آن‌ها را به سادگی پیدا کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *