public static Integer recursiveBinarySearch(Integer[] array, int startIndex, int endIndex, int number) {
if (startIndex > endIndex) {
return null;
}
int midIndex = (startIndex + endIndex) / 2;
if (array[midIndex] == number) {
return midIndex;
} else if (array[midIndex] > number) {
return recursiveBinarySearch(array, 0, midIndex - 1, number);
} else if (array[midIndex] < number) {
return recursiveBinarySearch(array, midIndex + 1, endIndex, number);
} else {
return null;
}
}
public static int search(Integer[] data, int number) {
int low;
int high;
int mid;
if (data == null)
return -1;
low = 0;
high = data.length - 1;
while (low <= high) {
mid = (low + high) / 2;
if (number < data[mid]) {
high = mid - 1;
} else if (number > data[mid]) {
low = mid + 1;
} else if (number == data[mid]) {
return mid;
}
}
return -1;
}
分享到:
相关推荐
C++实现Fibonacci数列递归及非递归算法
使用C++非递归实现fibonacci数列,对正在学习算法的同学应该挺有帮助的
组合数学实验fibonacci数列递归和非递归程序
Fibonacci数列,用c++编写的,非递归的函数调用求Fibonacci数列的第n项
百鸡问题 递归与非递归求最大公约数 斐波那契数列递归与非递归算法 递归与非递归求阶乘
斐波那契递归时间和非递归时间的比较(csdn)————程序
斐波那契数列递归与非递归算法(输入数列前N项)
Fibonacci数列的java实现,包括递归与非递归实现
斐波那契数列(fibonacci)-java的非递归实现。
华为题(斐波那契数列非递归)[定义].pdf
c#斐波那契数列(Fibonacci)(递归,非递归)实现代码,需要的朋友可以参考一下
C 语言实现的斐波那契数列(fibnacii),非递归方式。斐波拉契数列当输入值大于某个值时,基本的整形变量将无法保存其结果,因此本例使用字符串返回斐波拉契的结果,其中包括用字符串实现的大数加法。
主要为大家详细介绍了JAVA递归与非递归实现斐波那契数列,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Java实现用递归算法和非递归算法求解斐波那契数列问题.docx
java用非递归的方法打印Fibonacci数列。。。。。。。。
里面是【斐波那契数列】的前100项,可以当做学习过程中对照是否正确等使用,加油!
非递归斐波那契数列.py
废话不多说,直接上代码 #include #include void f(int n); int main(void) { f(10); return 0; } void f(int n) { if(n==1) { printf(1\n); return; } if(n==2) { printf(1 1\n);... i
代码如下:采用递归形式和非递归形式实现斐波那契数列</SPAN> 代码如下:#include “stdafx.h”#include <iostream>using namespace std;//递归形式的斐波那契数列int fibonacciRecursion(int n){ if (n == 1 || n ==...