您的位置:首页 > 其它

数组(冒泡排序,选择排序,二分查找,最大最小值,反转,录入互不相同的数字)

2019-01-17 20:28 411 查看

冒泡排序

[code]//冒泡排序
for(int i=0;i<array.length;i++) {
for(int j=0;j<array.length-i-1;j++) {
if(array[j]>array[j+1]) {
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}

选择排序

[code]//选择排序
for (int i = 0; i < array.length; i++) {
for (int j = i; j < array.length; j++) {
if(array[i]<array[j]) {
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}

二分查找

 

[code]//二分查找
public static void serch(int[] array,int number) {
int minIndex = 0;
int maxIndex = array.length-1;
int midIndex = (minIndex+maxIndex)/2;
while(number!=array[midIndex]) {
if(number<array[midIndex]) {
maxIndex = midIndex-1;
}else if(number>array[midIndex]) {
minIndex = midIndex+1;
}
midIndex = (minIndex+maxIndex)/2;
if(minIndex>maxIndex) {
System.out.println(number+"在数组中没找到!");
break;
}
}
if(number==array[midIndex])
System.out.println(number+"在数组中找到了,位于数组中的第"+(midIndex+1)+"位。");
}

最大值

[code]//最大值
public static int max(int[] array) {
int max = array[0];
for (int i=1; i< array.length; i++) {
if(array[i]>max) {
max = array[i];
}
}
System.out.println("数组的最大值:"+max);
return max;

}

最小值

[code]//最小值
public static int min(int[] array) {
int min = array[0];
for (int i=1; i< array.length; i++) {
if(array[i]<min) {
min = array[i];
}
}
System.out.println("数组的最小值:"+min);
return min;
}

反转数组

[code]//反转数组
public static void fanzhuan(int[] array) {
for (int i = 0; i < array.length/2; i++) {
int temp = array[i];
array[i] = array[array.length-1-i];
array[array.length-1-i] = temp;
}

//String str = Arrays.toString(array);
//System.out.println(str);
}

录入不同的数字

[code]//给数组录入互不相同的数字
Scanner sc = new Scanner(System.in);
System.out.println("输入10个整数..");
int[] intArray = new int[10];
for(int i = 0;i<intArray.length;i++) {
boolean flag = true;
System.out.print("请输入第"+(i+1)+"个数:");
//接受控制台输入的数
int input = sc.nextInt();
//判断数组中是否有该数字
for (int j : intArray) {
if(j==input) {
flag = false;
}
}
//如果falg为真,说明数组中没有该数字,将该数字录入数组
if(flag) {
intArray[i] = input;
}
}

//遍历数组
for (int i : intArray) {
System.out.println(i);
}

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐