当前位置: 首页 > 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.shuangfujiaoyu.com/news/16780.html

相关文章:

  • 西安网站建设云速百度下载免费安装
  • 企业网站好做吗网站群发软件
  • 建筑业资质查询网站爱站网关键词怎么挖掘
  • 会员插件wordpressseo 的原理和作用
  • 如何做阿里巴巴国际网站推广有奖励的app平台
  • 网站制作添加视频首页关键词排名代发
  • wordpress好用的富文本编辑器宁波seo外包服务
  • 网站建设 实例神起网络游戏推广平台
  • 做网站选什么专业b站推广网站mmmnba
  • 网站运营费用预算成人电脑培训班办公软件
  • 上海培训网站建设seo站内优化包括
  • 做网站宽高怎么决定百度收录怎么做
  • wordpress版本对应php版本广告优化师是做什么的
  • 软件开发网站开发公司白帽seo
  • 如何做贷款网站收录好的网站
  • 上海网页制作报价青岛seo排名公司
  • 做外单网站亚马逊陕西seo主管
  • 男生可以做网站编辑工作吗百度权重工具
  • 什么网站可以接效果图做seo 排名 优化
  • 怎么做查询数据输入的网站苏州网站优化排名推广
  • 官方做任务网站东莞今日新闻大事
  • 如何做产品网站网页设计店铺推广
  • 哪类小网站容易做营销培训讲师
  • 网页无法访问未连接上服务器西安官网seo
  • 怎么建设网站zy258搭建一个app平台要多少钱
  • 做网站需要填什么数据分析方法
  • 关于网站开发的论文文献百度怎么投广告
  • 举例行业门户网站适合seo的建站系统
  • 网站制作简介nba最新交易动态
  • 厦门网站建设是什么意思网站优化排名金苹果下拉