当前位置:  技术问答>linux和unix

如何用最快的方法判断,一个整数,是否在一堆整数中?

    来源: 互联网  发布时间:2017-04-25

    本文导语:  假设有一个数组 a[1000]={7,100,20}等等,再给一个数,如何不用循环的方法,直接判断此数据是否在a[1000]中? | int find_num(int num, int *num_array, int array_size, int array_index) {   if ( num_array == NULL || array...

假设有一个数组 a[1000]={7,100,20}等等,再给一个数,如何不用循环的方法,直接判断此数据是否在a[1000]中?

|
int find_num(int num, int *num_array, int array_size, int array_index)
{
  if ( num_array == NULL || array_index >= array_size )
  {
    return -1;     
  }
  
  if ( num == num_array[array_index] )
  {
    return array_index;      
  }
  
  return find_num(num, num_array, array_size, array_index + 1);
}

|
递归比循环效率还低。

你想效率高的话,还是排序吧,排好序在去查找很快的。

|
噢,效率就换成二分递归吧

|

嗯,先排序,再二分查找。

|




大家想法是不是有点惯性思维了, 这个也不是有序数组的查找哇...
直接遍历挨个比, 也无非是O(n);
排序再二分查找, 不是变成了O(n*logn) + O(logn)...

|
不一个个比还能有别的方法?

|
弄个二叉树

    
 
 

您可能感兴趣的文章:

  • c++ 一个二进制串转化为整数的解决方法
  • PHP整数取余返回负数的相关解决方法
  • 请问java中什么方法判断一个字符串是否能被转换成int或float? iis7站长之家
  • C# IP地址与整数之间转换的具体方法
  • PHP把小数转成整数3种方法
  • 判断整数序列是否为二元查找树的后序遍历结果的解决方法
  • java实现判断字符串是否全是数字的四种方法代码举例
  • 怎么判断shell的exec方法所执行的方法是否正确?
  • java判断远程服务器上的文件是否存在的方法
  • mysql 判断记录是否存在方法比较
  • mysql中判断记录是否存在方法比较
  • c#判断字符是否为中文的三种方法分享(正则表达式判断)
  • PHP判断是否有Get参数的方法
  • 请问用什么方法能判断一个文件是否存在,谢谢!
  • PHP判断文章里是否有图片的简单方法
  • jQuery判断checkbox是否选中的3种方法
  • java中判断本机操作系统的类和方法
  • 请问jsp有没方法判断窗口有没有框架???
  • php判断闰年的三种方法(闰年计算方法)
  • jQuery判断checkbox是否被选中的三种方法
  • Java中有什么方法判断字节中的每一个bit位是0还是1?
  • C#实现判断图形文件格式的方法
  • Python判断变量是否已经定义的方法
  • 判断一个数是不是素数的方法
  • 判断一个对象是否为jquery对象的方法
  • Android判断包名和类名是否存在的方法
  • 判断php数组维度(php数组长度)的方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ubuntu系统中软件安装、卸载以及查询是否已经安装某个软件包的方法
  • 子类从父类中继承的方法在内存中是否和父类的方法在同一位置??调用了子类,是否在内存中一定有父类??
  • Java 中是否有象MessageBox一样的类或方法
  • linux查看cpu是否支持64位的方法
  • JAVA中不赞成使用(Deprecated)的方法是否可以使用
  • jquery检测input checked 控件是否被选中的方法
  • 确定是否安装IIS服务的方法
  • PHP判断变量是否为0的方法
  • mysql判断字段是否存在的方法
  • 根据网络流量判断是否有异常事件发生的方法有哪些?
  • 请教一个简单的判断某个端口是否打开的方法
  • JQuery判断HTML元素是否存在的两种解决方法
  • 请问如何知道ResultSet中是否有记录和记录的总数,有什么方法吗?
  • 求教:在freebsd下设置服务器是否与在linux下设置方法一样?
  • C#判断日期是否到期的方法
  • 请问java中什么方法判断一个字符串是否能被转换成int或float?
  • linux命令行下用ctrl+alt+del重启计算机是否是正确的重启方法?
  • C#利用反射来判断对象是否包含某个属性的实现方法
  • php检测iis环境是否支持htaccess的方法
  • 查找oracle数据库表中是否存在系统关键字的方法
  • SQL Server中检查字段的值是否为数字的方法
  • java命名空间java.awt.im类inputcontext的类成员方法: getinputmethodcontrolobject定义及介绍
  • 实现在同一方法中获取当前方法中新赋值的session值解决方法
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: getcontrolobject定义及介绍
  • 突然想到一个奇怪的问题:如果一个非abstract类中包含一个空方法体(及非Java代码写的方法体是空的)的native方法,编译会通过吗?
  • java命名空间java.lang类runtime的类成员方法: runfinalization定义及介绍
  • 构造方法到底怎么用,构造方法体中可以放些什么东西,它和一般方法有什么本质区别功能上
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: dispose定义及介绍
  • jquery中slideUp()方法与slideDown()方法
  • java命名空间javax.swing类rowsorter<m>的类成员方法: allrowschanged定义及介绍
  • jquery中fadeIn()方法与fadeOut()方法(示例)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,