实现二分搜索函数,设计脚手架程序进行自动测试。

这篇具有很好参考价值的文章主要介绍了实现二分搜索函数,设计脚手架程序进行自动测试。。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. 设计思路
  二分搜索算法每次将数组中间值与目标值相比较,若相同,则该元素就是要寻找的元素,若不相同,二分搜索法通过一定的方法抛弃一半的待搜索区间,在剩余的区间中继续以相同方法搜索目标值.

2.源代码

#include <stdio.h>
int binarysearch(int a[],int high,int low,int x)
{
    int mid;
	if (low>high)
	return -1;      //查找失败	
	mid=(high+low)/2;   //折半
	if(x>a[mid])      //中间值小于x说明目标值在右边
	binarysearch(a,high,mid+1,x);
	else if(x<a[mid])      //中间值大于x说明目标值在左边
	binarysearch(a,mid-1,low,x);
	else return mid;
}
void main()
{
	int a[5]={1,3,5,7,9},low=0,high=sizeof(a)/sizeof(a[0])-1,x,i;
	scanf("%d",&x);    //输入待查的值
	i=binarysearch(a,high,low,x);
	if(i==-1)
	printf("no");
	else
	printf("%d",i);
}

3. 运行结果
7
3
(搜索7,由运行结果知7的下标为3。)
实现二分搜索函数,设计脚手架程序进行自动测试。,c语言,算法文章来源地址https://www.toymoban.com/news/detail-574688.html

到了这里,关于实现二分搜索函数,设计脚手架程序进行自动测试。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序入门04-后端脚手架搭建

    我们上一篇已经介绍了权限系统的库表搭建,光有表还是不够的,我们还需要有一个后台系统和数据库进行交互。搭建后台的时候既需要选择使用什么语言,也需要选择框架。 框架分为前端框架和后端框架。在第一篇微信开发者工具搭建的时候我们其实前端框架已经选择好了

    2024年02月05日
    浏览(28)
  • 【vue脚手架配置代理+github用户搜索案例+vue项目中常用的发送Ajax请求的库+slot插槽】

    下载axios 引用axios: import axios from \\\'axios\\\' 解决跨域方法: 1 cors: 2 jsonp:用的少,只能解决get请求的跨域问题 3 配置一个代理服务器 配置一个代理服务器方式一: 开启8080代理服务器方式:nginx(较复杂,需借助后端知识) 、vue-cli(重点)。 1 第一步:先通过cmd打开两台服务器 打

    2024年01月20日
    浏览(26)
  • 小程序框架Mpx的下一代脚手架升级之路|滴滴开源

    导读 Mpx开源之路已经走过五个年头, 目前支持了滴滴内部全量的小程序业务开发,是滴滴开源委员会孵化的精品项目。 2022年至今,我们对 Mpx 框架进行了多项重要功能升级,包括组合式API开发规范、分包异步构建支持、单元测试能力建设和今天要重点介绍的@mpxjs/cli脚手架升

    2024年02月13日
    浏览(32)
  • vue-cli 脚手架创建uniapp项目(微信小程序)

    1、全局安装 vue-cli 脚手架(不建议用 5.0 版本,避免报错) 2、脚手架创建项目 3、选择 默认模板 即可 4、编译并启动项目  5、开发者工具,导入项目,注意路径 \\\"项目地址/dist/dev/mp-weixin\\\" 开发的规范 不能直接在开发者工具中修改代码,口诀:vscode做开发,开发者工具做调试

    2024年02月09日
    浏览(31)
  • vue脚手架+elementUI,实现登录用户时的Loading...窗口

    为了全局通用控制此标签,所以我建议把他放到App.vue文件中 说到全局通用,肯定少不了全局变量 发送请求时使用 当我们在login登陆后会跳转到aboutMe组件,所以Login组件会被销毁,这里就体现了全局变量的好处 在此组件加载成功时就证明登录成功了,我们做个2秒缓冲然后直

    2024年02月04日
    浏览(34)
  • VUE(uni-app框架)开发微信小程序①-搭建脚手架

    一,脚手架搭建 前提:搭建脚手架的前提是需要装node.js,因为需要用到npm。 下载官网:下载 | Node.js 中文网 (nodejs.cn) 根据自己需要下载一个适合自己的版本,然后点击安装,安装完成后在命令提示窗口输入 node -v如果有版本信息就说明安装成功了  接下来: 1.全局安装: np

    2024年02月11日
    浏览(33)
  • ​无需测试环境!如何利用测试脚手架隔离微服务,实现功能自动化

    想在不建立完整测试环境的情况下测试微服务? 想在将变更推送到主线分支之前完成测试? 这是我们在进行项目交付时经常遇到的难题。最近,当我们开始一个新的项目,为客户构建一个新的聚合平台时,我们希望将尽可能多的测试和自动化转移到流程的合并前执行。 我们

    2024年02月10日
    浏览(46)
  • 三、创建脚手架和脚手架分析

    1、安装node.js **下载地址:**https://nodejs.org/zh-cn/ 界面展示 2、检查node.js版本 查看版本的两种方式 node -v node -version 出现版本号则说明安装成功(最新的以官网为准) 3、为了提高我们的效率,可以使用淘宝的镜像源 输入: npm install -g cnpm --registry=https://registry.npm.taobao.org 即可安

    2024年02月22日
    浏览(32)
  • uniapp使用cli脚手架创建兼容小程序和h5的项目 自动化命令打包运行

    HbuliderX搭建项目结构: CLI搭建项目结构: CLI方式搭建uniapp项目: 大家可以看下两种方式搭建的项目文件夹目录有什么区别,上面的是HbuilderX模版搭建的小程序项目,下面的是cli搭建的项目,先把my-test项目中src下面的文件全部删除,然后我把小程序代码全部塞进了src文件夹下

    2024年02月16日
    浏览(52)
  • 前端架构: 脚手架命令行交互核心实现之inquirer和readline的应用教程

    命令行交互核心实现 核心目标:实现命令行行交互,如List 命令行的交互呢比命令行的渲难度要更大,因为它涉及的技术点会会更多 它涉及以下技术点 键盘输入的一个监听 (这里通过 readline 来实现) 计算命令行窗口的尺寸 清屏 光标的移动 输出流的静默 (我们输出的内容, 不

    2024年04月23日
    浏览(22)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包