算法小实验——分治算法二分搜索(含报告)

算法小实验------分治算法二分搜索(含报告)

实验名称

二分搜索问题实验

问题描述

给定已经排好序的n个元素a0:n-1,在n个元素中找出一特定元素x。

代码演示

c 复制代码
#include <stdio.h>
int binarySearch(int arr[], int size, int x) {
    int left = 0, right = size - 1;
    while (left <= right) {
        int mid = left + (right - left) / 2;
        if (arr[mid] == x)
            return mid;
        if (arr[mid] < x)
            left = mid + 1;
        else
            right = mid - 1;
    }
    return -1;
}
int main() {
    int arr[] = {1, 2, 3, 5, 7, 9};
    int n = sizeof(arr) / sizeof(arr[0]);
    int x = 5;
    int result = binarySearch(arr, n, x);
    if (result != -1)
        printf("Element found at index: %d\n", result);
    else
        printf("Element not found.\n");
    return 0;
    }
    

分治算法二分搜索实验报告
点赞关注,感谢您的支持 ^ _ ^

如有错误,还请您批评指正🤝 🤝 🤝

相关推荐
caimouse36 分钟前
reactos编码规范
c语言·开发语言
小雨下雨的雨2 小时前
井字棋AI机器人实现详解 - Minimax算法实战-鸿蒙PC Electron框架完成
前端·人工智能·算法·华为·electron·鸿蒙
xieliyu.5 小时前
Java算法精讲:双指针(三)
java·开发语言·算法
一条小锦吕*5 小时前
基于Spring Boot + 数据可视化 + 协同过滤算法的推荐系统设计与实现(源码+论文+部署全讲解)
spring boot·算法·信息可视化
AI thought6 小时前
【转】C语言中 -> 是什么意思?
c语言·位移运算符·右移赋值·无符号整数·算术右移
如竟没有火炬7 小时前
最大矩阵——单调栈
数据结构·python·线性代数·算法·leetcode·矩阵
8Qi87 小时前
LeetCode 1143 & 718:最长公共子序列 / 最长重复子数组
算法·leetcode·职场和发展·动态规划
绿算技术8 小时前
万卡推理集群存储选型分析:从核心架构到应用视角
大数据·科技·算法·架构
想吃火锅10058 小时前
【leetcode】1.两数之和js版
javascript·算法·leetcode