当前位置: 首页 > news >正文

网站后台怎么控制百度竞价排名医院事件

网站后台怎么控制,百度竞价排名医院事件,软件定制开发是什么意思,昆明最新新闻事件今天目录 算法思想: 实践: 备注: 二分查找是一种高效的查找算法,适用于在 有序数组 或列表中快速定位目标元素的索引。 重要事情说三遍:使用前提:数组有序,无重复,如果数组未排序&am…

目录

算法思想:

实践:

备注:


二分查找是一种高效的查找算法,适用于在 有序数组 或列表中快速定位目标元素的索引。

重要事情说三遍:使用前提:数组有序,无重复,如果数组未排序,先进行排序去重处理。

                                               数组有序,无重复,如果数组未排序,先进行排序去重处理。

                                               数组有序,无重复,如果数组未排序,先进行排序去重处理。        

算法思想:

  1. 初始化左右边界: 定义两个指针 leftright,分别指向数组的起始位置和终止位置。
  2. 计算中间位置: 根据公式 mid = left + (right - left) // 2 计算中间位置索引,避免大数相加可能导致的溢出。(mid=(left+right)/2)这种写法当left和right很大时,可能数据溢出。

实践:

二分查找中,容易写错的地方往往是边界条件区间的定义,这是导致程序混乱的根本原因。这里详细解释一下这两种常见的区间定义(左闭右闭左闭右开)及其实现逻辑。

左闭右闭:

#include <stdio.h>int binarySearch(int arr[], int size, int target) {int left = 0;int right = size - 1;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}; // 偶数长度数组int size = sizeof(arr) / sizeof(arr[0]);int target = 7;int result = binarySearch(arr, size, target);if (result != -1) {printf("目标值 %d 的索引是 %d\n", target, result);} else {printf("目标值 %d 未找到。\n", target);}return 0;
}

左闭右开:

#include <stdio.h>int search(int* nums, int numsSize, int target) {int left = 0;int right = numsSize; // 左闭右开区间while (left < right) { // 循环条件:left < rightint mid = left + (right - left) / 2;if (nums[mid] == target) {return mid; // 找到目标值} else if (nums[mid] > target) {right = mid; // 调整右边界} else {left = mid + 1; // 调整左边界}}return -1; // 未找到目标值
}int main() {int nums[] = {1, 3, 5, 7, 9};int numsSize = sizeof(nums) / sizeof(nums[0]);int target = 7;int result = search(nums, numsSize, target);if (result != -1) {printf("目标值 %d 的索引是 %d\n", target, result);} else {printf("目标值 %d 未找到。\n", target);}return 0;
}

备注:

在二分查找中,左中点(向下取整)右中点(向上取整) 的计算方式会影响算法的细节,但在实际应用中,它们的功能基本是等效的。

http://www.dinnco.com/news/20801.html

相关文章:

  • 聊城做网站的公司咨询附近的成人电脑培训班
  • 金融 网站 源码信息流优化师
  • 网站建设质量要求培训学校加盟费用
  • 网站托管公司哪家好html网页设计模板
  • 给律师做推广的网站靠谱么东莞seo建站排名
  • 2012年网站设计方法信阳seo公司
  • 浏览器的网站怎么在百度发广告
  • 杭州好的做网站公司青岛网站设计
  • 网站模板哪家好怎么做seo
  • 2022麻豆区区区三区四区天津谷歌优化
  • 无锡网站优化排名推广盐城seo优化
  • 做境外域名网站论坛软文案例
  • 武汉方林装饰公司地址百度推广seo优化
  • 中职高一网站建设试题seo和sem是什么
  • 东营日报社官网广州seo招聘
  • 网站建设编辑教程网站怎么优化推广
  • 节日的网站怎么做口碑营销的定义
  • 四川可以做宣传的网站站长工具网站排名
  • 怎么注册网站挣流量免费seo工具汇总
  • 宁波手机建站模板近一周热点新闻
  • 北海哪家做网站小小课堂seo自学网
  • 手机可以做网站服务器吗个人博客搭建
  • 手游传奇网站100种宣传方式
  • 什么类型的产品可以做网站出口成品在线视频免费入口
  • 深圳建设网站公司天津seo标准
  • 网站关键词推广企业自媒体135免费版下载
  • 铜梁城乡建设网站单页面网站如何优化
  • 网站建设各语言优点seo互联网营销培训
  • 济南建站公司电话河南做网站优化
  • 网站地图如何更新seo网站seo