java语言二分法代码 二分法排序java代码

二分法查找的java代码

public class ef {

创新互联专注于铁西网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供铁西营销型网站建设,铁西网站制作、铁西网页设计、铁西网站官网定制、重庆小程序开发服务,打造铁西网络公司原创品牌,更为您提供铁西网站排名全网营销落地服务。

public static void main(String[] args) {

int[] a = { 4, 8, 12, 44, 69, 71, 98, 132 ,133};

int m = ef.ef(a, 0, a.length, 71);

if(m!=-1){

System.out.println(a[m]+"====="+m);

}

System.out.println("不存在该数字");

}

public static int ef(int[] a, int from, int to, int b) {

int midel = (from + to) / 2;

if ((to - from) = 1 b != a[midel]) {

return -1;

}

if (b a[midel]) {

return ef(a, midel, to, b);

} else if (b a[midel]) {

return ef(a, from, midel, b);

} else {

return midel;

}

}

}

写一个java程序,用二分法把6插入到数组[1,2,5,7,8,9,13]

public static void insertSort(int[] data, int num) {

int left, right;

int middle, j;

// 准备

left = 0;

right = data.length - 2;

// 二分法查找插入位置

while (right = left) {

// 指向已排序好的中间位置

middle = (left + right) / 2;

if (num data[middle])

right = middle - 1;// 插入的元素在右区间

else

left = middle + 1; // 插入的元素在左区间

}

// 后移排序码大于R[i]的记录

for (j = data.length - 2; j = left; j--) {

data[j + 1] = data[j];

}

// 插入

data[left] = num;

}

public static void main(String[] args) {

int[] data1 = { 1, 2, 5, 7, 8, 9, 13, 0 };// 预留一位给需要排序插入的使用

//insertSort(data1, 0);

insertSort(data1, 6);

//insertSort(data1, 14);

for (int i = 0; i data1.length; i++) {

System.out.println(data1[i]);

}

}

用java编写程序,采用二分法查找一个数

public class Lookup {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

/**

* 二分法查找

*/

int a[]={23,45,98,100,110,120,140};

int search=120;//记录要查找的元素

int lower=0;//记录第一个元素

int temp=a.length-1 ;

int index=-1;

while(lower=temp){

index = (lower+temp)/2;//记录中间元素,用两边之和除2.

int currentValue=a[index];

if(currentValue==search){//如果得到的数与要查找的数相等则break退出;

break;

}else if(currentValuesearch){//如果得到的数要小于查找的数、就用下标加1;否则减一

lower=index+1;

}else{

temp = index-1;

}

}

if(lower=temp){

System.out.println(search+"在数组中第:"+(index+1)+"位");

}else{

System.out.println("里面没有这个元素");

}

}

}


本文标题:java语言二分法代码 二分法排序java代码
链接地址:http://scyanting.com/article/ddosgoh.html