(第11讲)二分排序(折半插入排序法)
来源:互联网 发布:淘宝商品类目大全 编辑:程序博客网 时间:2024/06/05 10:45
第十一讲
二分排序(折半插入排序法)的基本思想是:设有一个序列a[0],a[1]......a[n];其中a[i-1]个有序,插入a[i],利用二分法搜索a[i]插入的位置。
程序如下:
public class Binary {
public static void main(String[] args) {
int arr[] = { 90, 343, 12, 3, -13, 45 };
BinaryCharu hs = new BinaryCharu();
hs.half(arr);
}
}
class BinaryCharu {
public void half(int a[]) {
int left, right, mid;
int number;
for (int i = 1; i < a.length; i++) {
left = 0;
right = i - 1;
number = a[i];
// 通过二分法定位数据number的位置
while (left <= right)
{
mid = (left + right) / 2;
if (number < a[mid])
{
right = mid - 1;
}
else
{
left = mid + 1;
}
}
for (int j = i - 1; j >= left; j--)
{
a[j + 1] = a[j];
}
a[left] = number;
}
for (int i = 0; i < a.length; i++) {
System.out.print(a[i] + " ");
}
}
}
0 0
- (第11讲)二分排序(折半插入排序法)
- 折半(二分)插入排序
- 【初探】 二分(折半)插入排序
- 排序算法--折半插入排序(二分查找排序)
- java实现折半插入排序(二分插入排序)
- 折半(二分)插入排序
- 折半(二分)插入排序
- 折半排序法(二分插入排序法)
- 折半排序法(二分插入排序法)
- 排序算法二:二分(折半)插入排序
- 直接插入排序,二分(折半)插入排序,希尔插入排序
- 插入排序(折半插入)
- 二分排序法(折半插入法)
- 二分排序法(折半插入法)
- 排序算法(四)折半插入排序(二分插入排序)
- (第10讲)插入式排序
- 插入排序(简单插入&折半插入)
- 内部排序(二)折半插入法
- 1.8.1 Nginx+Tomcat实现单IP、多域名、多站点的访问
- 算法_动态规划_01背包问题(重量为浮点型)
- Memcached安装与配置
- zoj3872——Beauty of Array(数学)
- RxAndroid和Retrofit结合使用-网络调用和生命周期分析
- (第11讲)二分排序(折半插入排序法)
- IOS-dispatch_once和@synchronized的单例区别
- 苹果双系统安装教程,苹果笔记本如何装Win7(经典)
- Android的UEvent流程分析
- 生成二维码的简单示例
- Python 资源大全
- 图像亮度自适应调整
- IOS开发证书 钥匙串“此证书的签发者无效”解决方法
- 深入理解进程间通信(IPC)