首页
学习
活动
专区
圈层
工具
发布

有序数组中查找具体数字n(二分查找)

题目 在一个有序的数组中查找具体的某个数字n,编写功能:在v[0]<=v[1]<… 思路(一)    我们先定义一个有序的数组arr,再设置数组中的一个数字k为我们所寻找的值,当数字与算法结果匹配时,...: //在一个有序的数组中查找具体的某个数字n,编写功能:在v[0]<=v[1]<......思路(二)   上述算法并不够高效,在数组有序的情况下,找数字可用更高效的方法 折半查找法或二分查找法   如果数组中有n个数字,那么逐个查找最坏将查找n次,当n很大时,计算机运算量将更大,而二分查找法只需查找...实现代码如下: //该算法不够高效,在数组有序的情况下,找数字可用更高效的方法 //折半查找法或二分查找法 //如果数组中有2^32个数,一般方法最坏要查找2^32次,而二分查找法只需查找log2n次...} else { printf("找到了,下标是:%d\n", ret); } return 0; } 注意:一定是在有序的数组中才可以运用二分查找法 谢谢欣赏!

1.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    正则表达式-6.查找方向

    前后查找 如果,需要一个模式,它包含的匹配本身并不返回,而是用于确认正确的匹配位置,它并不是匹配结果的一部分。这时就需要进行“前后查找”(一般而言,前后查找模式是相对于查找文本的位置而言,左为前)。...注意:前后查找包括向前查找(lookahead)和向后查找(lookbehind)。常见正则表达式都支持向前查找。但是Java,.NET,PHP和Perl支持的向后查找有一些限制。...JavaScript和ColdFusion不支持向后查找。 2. 向前查找 向前查找的子表达式用?=开头,需要匹配的文本跟在=的后面。 向前查找指定了一个必须匹配但是不在结果中返回的模式。...任何子表达式都可以转换为向前查找的表达式。在同一个搜索模式中可以使用多个向前搜索的表达式,它们可以出现在模式的任何位置。 3. 向后查找 向后查找子表达式用?...<=开头 不是所有的正则表达式引擎都支持向后查找

    97320

    5000字详解Python “正则表达式” !

    什么是“正则表达式” “正则表达式” 是一组由字母和符号组成的特殊文本,可以帮助我们从某个复杂的字符串中,提取出满足我们要求的特殊文本。 用一个我理解的比喻带着大家体会 “正则匹配的过程”。...常用方法介绍 其中三个函数用于查找匹配match()、search()、findall(),一个函数sub()用于替换,一个函数split()用于切分字符串,还有一个函数compile()用于编译正则表达式...s3 = '12one34two56three78four' # 定义一个正则表达式对象,用于匹配至少一个数字 pattern = re.compile(r'\d+') # 扫描整个字符串,匹配s3字符串中...,符合该正则表达式的字符串。...pattern.findall(s3) # 从s3字符串,下标为1的位置,查找匹配值。 pattern.findall(s3,1) # 从s3字符串,下标为1到下标为6的位置之间,查找匹配值。

    79230

    用正则表达式查找提取替换字符串

    C++11标准支持正则表达式后,使用正则表达式查找、提取、替换字符串就无需使用第三方开源库。...类regex,用来存放正则表达式,其实就是一个字符串,只需关心构造函数,其需要一个字符串作为参数进行对象构造。正则表达式语法遵循ECMAScript标准。...类smatch,用来存放查找、提取操作的结果,其实就是一个ssub_match的数组,正则表达式语法支持使用括号来获得某个子匹配,所以匹配结果会有多个,第一个存完整匹配结果,其它存正则表达式指定的子匹配...prefix()和suffix()是获取查找结果前面和后面的字符串,比如“I am a good boy”查找am关键词,prefix()就是“I ”,suffix()就是“ a good boy”。...m, regex e); 第1个版本简单判断是否找到,指定搜索字符串和查找正则表达式 第2个版本除了判断是否找到外,还可以指定smatch对象获取查找结果。

    5.2K40
    领券