博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
二分查找和数组合并
阅读量:5057 次
发布时间:2019-06-12

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

/**

* 数组合并
*/
public static int[] arrayMerge(int[] a, int[] b){
int[] c = new int[a.length + b.length];
int k=0,j=0,i=0;
while (k< a.length && j <b.length){
if (a[k] <= b[j]){
c[i] = a[k];
k++;
} else {
c[i] = b[j];
j++;
}
i++;
}
if (k == a.length){
for (int n = j; n < b.length; n++) {
c[k+n] = b[n];
}
} else {
for (int n = k; n < a.length; n++) {
c[k+n] = a[n];
}
}
return c;
}

/** * 二分法查找 */public static int binarySearch(int[] a, int x){    return binarySearch(a, x, 0, a.length);}private static int binarySearch(int[] a, int x, int left, int right) {    int high = right-1;    while (left<=high){        count++;        int mid = (left + high)/2;        int tem = a[mid];        if (tem > x)            high = mid-1;        else if (tem < x)            left = (mid+1);        else            return mid;    }    return -1;}

转载于:https://www.cnblogs.com/canmeng-cn/p/8046147.html

你可能感兴趣的文章
SVN使用教程总结
查看>>
SQL中varchar和nvarchar有什么区别?
查看>>
(转)跟我一起写MAKEFILE
查看>>
Linux内存段的分析
查看>>
网卡启动问题
查看>>
Ruby元编程:单元测试框架如何找到测试用例
查看>>
[FJOI2016]神秘数(脑洞+可持久化)
查看>>
android配置开发环境
查看>>
PhpStorm本地断点调试
查看>>
iOS----------YYModel
查看>>
比起 Windows,怎样解读 Linux 的文件系统与目录结构?
查看>>
文件修改
查看>>
Can't create handler inside thread that has not called Looper.prepare()
查看>>
图像的双缓存技术
查看>>
微信小程序template模板与component组件的区别及使用方法
查看>>
通过机构查询该机构下,以及下级机构的人员 id
查看>>
好程序员Python自动化运维开发实战 六、流程控制
查看>>
密码生成器
查看>>
制作TortoiseSVN最新版本的中文DLL(转)
查看>>
最小生成树 Prim算法 Kruskal算法实现
查看>>