黑马程序员技术交流社区
标题:
数组中的查找与排序
[打印本页]
作者:
七色★碎羽
时间:
2015-9-10 23:06
标题:
数组中的查找与排序
冒泡查找
public class Demo3 {
public static void main(String[] args) {
int[] arr={12,56,45,22,46,89};
bubblesort(arr);
printArray(arr);
}
public static void bubblesort(int[] arr) {
for(int x=0;x<arr.length;x++){
for (int y=0;y<arr.length-x-1;y++){
if(arr[y]>arr[y+1]){
int temp=arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
public static void printArray(int[] arr){
System.out.print("[");
for(int i=0;i<arr.length;i++){
if(i==arr.length-1){
System.out.println(arr[i]+"]");
}else
System.out.print(arr[i]+",");
}
}
}
选择排序
public class Demo4 {
public static void main(String[] args) {
int[] arr={12,56,45,22,46,89,};
selectsort(arr);
printArray(arr);
}
public static void selectsort(int[] arr){
for (int x=0;x<arr.length;x++){
for(int y=x+1;y<arr.length;y++){
if(arr[x]>arr[y]){
int temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
}
}
public static void printArray(int[] arr){
System.out.print("[");
for(int i=0;i<arr.length;i++){
if(i==arr.length-1){
System.out.println(arr[i]+"]");
}else
System.out.print(arr[i]+",");
}
}
}
,二分查找
public class Demo5 {
public static void main(String[] args) {
int[] arr={11,35,78,89,90,93,99};
int a=binarySearch(arr,89);
System.out.println(a);
}
public static int binarySearch(int[] arr,int x) {
int min =0;
int max=arr.length-1;
int mid=0;
while(min<=max){
mid=(min+max)/2;
if(arr[mid]<x){
min=mid+1;
}else if(arr[mid]>x){
max=mid-1;
}else {
return mid;
}
}
return -1;
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2