您当前位置:设计在线网 >> 自动控制理论 >> 浏览文章

两个简单常用算法的java代码实现

分享到:
本文章讲述了两个简单常用算法的java代码实现.

两个简

单常用算法的java实现,冒泡排序与二分查找

代码如下:

/*

*两个简单常用算法的java实现,冒泡排序与二分查找

*

*@author Lance

*@date 2010-09-11 11:22

*/

public class Demo{

public static void main(String args){

//将任意的int数组使用冒泡排序进行升序排列,返回结果

int number=bubbleSort();

//在排序的基础上进行二分查找,返回指定数字在数组中的索引

binarySearch(number,769);

}

/*

*冒泡排序

*

*@return排序后的数组

*/

public static int bubbleSort(){

int number={2,43,215,42,6,575,97869,436,42,652,-546,

698890,5646,-0,65,54,5,7,769,456,4,7,8,6547,6,0,

234,344,76665};

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

for(int j=i;j number.length;j++){

//若改成降序,把""改成""即可

if(number[i]number[j]){

//使用位运算互换

number[i]=number[i]^number[j];

number[j]=number[i]^number[j];

number[i]=number[i]^number[j];

}

}

}

System.out.print("冒泡排序后的数组:\n[");

for(int i:number){

System.out.print(i+",");

}

System.out.print("]\n");

return number;

}

/*

*二分查找

*

*@param number

*升序的源数组

*@param desc

*需要找的目标数,任意数

*@return desc在number中的索引,返回-1时说明不存在

*/

public static int binarySearch(int number,int desc){

int index=-1;

int head=0;

int end=number.length;

while(head=end){

int middle=(head+end)/2;

if(number[middle]==desc){

index=middle;

break;

}else if(number[middle]desc){//若number为降序时,将""换成""

end=middle-1;

}else{

head=middle+1;

}

}

System.out.println("\n你要找的目标数"+desc+"所在数组中的位置为:"+index);

return index;

}

推荐阅读:
无源光网络技术讲解
基本算法语句-条件语句
不可逆加密算法的特征介绍
推荐文章  
赞助商链接  
热门排行  
主题推广  
中国设计在线网 All Rights Reserved. 互联网违法和不良信息举报
信息产业部备案号:湘ICP备09001063号