c语言完成顺序查找与折半查找代码实现
时间: 2023-05-17 11:00:52 浏览: 425
C语言实现顺序表的顺序查找和折半查找
顺序查找和折半查找都是常见的查找算法,其中顺序查找是最简单直接的一种,适用于小规模的数据查找;而折半查找则适用于有序序列的查找,且效率比顺序查找高。
顺序查找的实现比较简单,其基本思路是从头到尾依次遍历数组,并与目标元素进行比较,直到找到相同元素或遍历结束。C语言中的顺序查找代码实现如下:
```
int seqSearch(int arr[], int len, int target)
{
for (int i = 0; i < len; i++)
{
if (arr[i] == target)
return i;
}
return -1; //未找到目标元素,返回-1
}
```
折半查找的实现则需要借助有序序列的特点,其基本思路是将序列分成两个部分,如果目标元素比中间元素小,则在左半部分继续查找;否则在右半部分查找,直到找到目标元素或左右指针重合。C语言中的折半查找代码实现如下:
```
int binarySearch(int arr[], int len, int target)
{
int left = 0, right = len - 1;
while (left <= right)
{
int mid = (left + right) / 2;
if (arr[mid] == target)
return mid;
else if (arr[mid] < target)
left = mid + 1;
else
right = mid - 1;
}
return -1; //未找到目标元素,返回-1
}
```
以上就是C语言中顺序查找和折半查找的代码实现,通过掌握这些算法,在实际编程中可以根据不同的需求来选择合适的算法来查找目标元素。
阅读全文