C语言折半查找算法的代码怎么写

下面是一个基本的C语言折半查找算法的示例代码:#include int binarySearch(int arr[], int left, int right, int target) {while (left <= right) {int mid = left + (right – left) / 2;if (arr[mid] == target) {return mid;}

下面是一个基本的C语言折半查找算法的示例代码:

#include <stdio.h>

int binarySearch(int arr[], int left, int right, int target) {
    while (left <= right) {
        int mid = left + (right - left) / 2;
        
        if (arr[mid] == target) {
            return mid;
        } else if (arr[mid] < target) {
            left = mid + 1;
        } else {
            right = mid - 1;
        }
    }
    
    return -1; // 表示未找到
}

int main() {
    int arr[] = {1, 3, 5, 7, 9, 11, 13, 15};
    int n = sizeof(arr) / sizeof(arr[0]);
    int target = 7;
    
    int result = binarySearch(arr, 0, n - 1, target);
    
    if (result == -1) {
        printf("Element not found\n");
    } else {
        printf("Element found at index %d\n", result);
    }
    
    return 0;
}

在这个示例代码中,binarySearch函数接受一个已排序的数组、数组的左边界、右边界和目标元素作为参数,并返回目标元素的索引。在main函数中,我们声明一个已排序的数组arr,然后调用binarySearch函数来查找目标元素7。如果找到目标元素,则打印出目标元素的索引,否则打印出“Element not found”。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/929859.html

(0)
派派
上一篇 2024-03-12
下一篇 2024-03-12

相关推荐

  • apache启动不起来如何解决

    当Apache启动不起来时,通常是由于以下原因导致的:配置文件错误:检查Apache的配置文件(通常为httpd.conf)是否有语法错误或配置不正确,可以使用命令apachectl configtest来检查配置文件的语法是否正确。端口冲突:确保Apache要使用的端口(通常为80或443)没有被其他程序占用。可以使用命令netstat -tuln来查看当前系统上的端口占用情况。日志文件错误:查

    2024-03-27
    0
  • Panel控件的作用有哪些

    Panel控件是一种容器控件,用于包含和组织其他控件,并且可以设置自身的样式和属性。它的主要作用包括:组织和布局:Panel控件可以包含其他控件,并且可以通过设置布局属性来控制这些控件的相对位置和大小。分组和分类:Panel控件可以将相关的控件放置在一起,以便更好地组织和管理UI界面。样式设置:Panel控件可以设置自身的样式属性,如背景色、边框样式等,以美化UI界面。事件处理:Panel控件可以

    2024-03-12
    0
  • 苹果15怎么设置动态壁纸

    很多用户都喜欢设置自己的图片来当壁纸,其中一部分用户不知道该怎么设置苹果15的动态壁纸,进入设置以后在墙纸里面就可以进行操作了,方法还是很简单的。苹果15怎么设置动态壁纸1、点击“设置” 2、选择“墙纸” 3、点击“选取新墙纸” 4、选择“动态墙纸“ 5、选择你喜欢的墙纸以后点击下面的“设定” 6、根据你的需求来选择就可以了。

    2024-02-22 技术经验
    0
  • Fortran的运算符怎么使用

    Fortran中的运算符和其他编程语言类似,用于执行数学运算和逻辑运算。常见的运算符包括算术运算符、关系运算符、逻辑运算符等。算术运算符:加法:+减法:-乘法:*除法:/指数运算:**示例:a = 10b = 3c = a + bd = a * be = a / bf = a ** b关系运算符:相等:==不相等:/=大于:>小于:=小于等于:<=示例:

    2024-04-12
    0
  • MATLAB怎么声明全局变量

    在MATLAB中,要声明全局变量,可以使用global关键字。例如,要声明一个全局变量global_var,可以使用以下语法:global global_var;然后在需要使用这个全局变量的函数中,可以直接访问和修改global_var的值,而无需在每个函数中重新声明和传递这个变量。

    2024-02-22
    0
  • sql中substring函数的作用是什么

    在SQL中,SUBSTRING函数用于提取字符串的一部分。它允许您从字符串中选择指定的字符子串,并可以指定起始位置和长度。具体来说,SUBSTRING函数的作用是:从一个字符串中提取指定位置开始的一段字符子串。可以选择提取的子串的长度,或者提取到字符串的末尾。可以用于处理字符串中的特定字符,如日期、时间或其他格式的数据。可以用于对字符串进行格式化或转换。SUBSTRING函数在不同的数据库

    2024-01-29
    0

发表回复

登录后才能评论