冒泡排序,选择排序法,直接插入排序,二分法查找

//冒泡排序

public class Text6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] nums= {12,1,6,32,9,88,75,32};
for(int i=0;i<nums.length-1;i++) {
for(int j=0;j<nums.length-1-i;j++) {
if(nums[j]>nums[j+1]) {
nums[j]=nums[j]+nums[j+1];
nums[j+1]=nums[j]-nums[j+1];
nums[j]=nums[j]-nums[j+1];
}
}
}
for(int x:nums) {
System.out.println(x);
}
}
}

//选择排序法

public class Text7 {
public static void main(String[] args) {
int[] nums= {12,1,6,101,32,9,88,75,32,99};
int minindex=0;
for(int i=0;i<nums.length-1;i++) {
minindex=i;
for(int j=i+1;j<nums.length;j++) {
if(nums[minindex]>nums[j]) {
minindex=j;
}
}
if(minindex!=i) {
nums[minindex]=nums[minindex]+nums[i];
nums[i]=nums[minindex]-nums[i];
nums[minindex]=nums[minindex]-nums[i];
}
}
for(int x:nums) {
System.out.println(x);
}
}
}


//直接插入排序算法


public class Text8 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] nums= {12,1,6,32,9,88,75,32};
for(int i=1;i<nums.length;i++) {
int temp=nums[i];
int j=0;
for(j=i-1;j>=0;j–) {
if(nums[j]>temp) {
nums[j+1]=nums[j];
}else {
break;
}
}
if(nums[j+1]!=temp) {
nums[j+1]=temp;
}
}
for(int x:nums) {
System.out.println(x);
}
}
}


//二分法查找


public class Text9 {
public static void main(String[] args) {
//必须是有序的,无序先排序
int[] nums= {1,5,6,9,10,15,66};
int index=binarySearch(nums,15);
System.out.println(index);

}
public static int binarySearch(int[] num,int key) {
	int start=0;
	int end=num.length-1;//结束下标
	
	while(start<=end) {
		int middle=(start+end)/2;
		if(num[middle]>key) {
			end=middle-1;
		}else if(num[middle]<key){
			start=middle+1;
		}else {
			return middle;	
		}							
	}
	return -1;				
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值