博客
关于我
重新整理数据结构与算法(c#)—— 算法套路二分法[二十四]
阅读量:401 次
发布时间:2019-03-06

本文共 521 字,大约阅读时间需要 1 分钟。

前言

前面写过二分法使用的是递归手法,然后该节才有不递归的方式执行。

二分法的时间复杂度为log(2)n。空间复杂度为:1。

正文

代码:

static void Main(string[] args){	int[] arr = {1,3,8,10,11,67,100 };	int index= BinarySearch(arr,8);	Console.WriteLine("查询出的下标索引为:"+index);//2	Console.ReadKey();}public static int BinarySearch(int[] arr,int target){	int left = 0;	int right = arr.Length - 1;	while (right>left)	{		var mid = (left + right) / 2;		if (arr[mid] == target)		{			return mid;		}		else if (arr[mid] > target)		{			right = mid + 1;		}		else		{			left = mid - 1;		}	}	return -1;}

转载地址:http://qoskz.baihongyu.com/

你可能感兴趣的文章
js求阶乘
查看>>
简单的xml读取存储方法(未优化)
查看>>
Making the grade 和Sonya and Problem Wihtout a Legend
查看>>
Nginx---惊群
查看>>
项目中常用的审计类型概述
查看>>
(九)实现页面底部购物车的样式
查看>>
python-day3 for语句完整使用
查看>>
ButterKnife使用问题
查看>>
为什么讨厌所谓仿生AI的说法
查看>>
ORACLE 客户端工具
查看>>
基于LabVIEW的入门指南
查看>>
weblogic之cve-2015-4852
查看>>
Java注释
查看>>
C++ 函数重载
查看>>
.NET微信网页开发之使用微信JS-SDK调用微信扫一扫功能
查看>>
使用mybatis-generator生成底层
查看>>
Mybatis【5】-- Mybatis多种增删改查那些你会了么?
查看>>
计算输入的一句英文语句中单词数
查看>>
lvs+keepalive构建高可用集群
查看>>
6 个 Linux 运维典型问题
查看>>