public class XuanZedemo {
public static void main (String [] args){
int []arr = {5,6,8,4,3,0,9};
System.out.print("排序前:");
for(int i =0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
System.out.println();
int temp;
for(int i =0;i<arr.length-1;i++){
for(int j=i+1;j<arr.length;j++){
if(arr[i]>arr[j]){
temp=arr[j];
arr[j]=arr[i];
arr[i]=temp;
}
}
}
System.out.print("排序后:");
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
}
结果:
排序前:5 6 8 4 3 0 9
排序后:0 3 4 5 6 8 9
public class MaoPaodemo {
public static void main (String [] args){
int [] arr = {5,6,8,4,2,9,12};
System.out.print("排序前:");
for(int i =0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.print("排序后:");
int temp;
for(int i = 0 ; i<arr.length-1;i++){
for(int j=0;j<arr.length-1-i;j++){
if(arr[j]>arr[j+1]){
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp; }
}
}
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
}
}
结果:
排序前:5 6 8 4 2 9 12
排序后:2 4 5 6 8 9 12
public class ChaRudemo {
public static void main(String[] args) {
int[] arr = { 4, 5, 6, 8, 1, 2 };
System.out.print("排序前:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
ChaRu(arr);
System.out.print("排序后:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
private static void ChaRu(int[] arr) {
int i, j;
int target;
for (i = 1; i < arr.length; i++) {
j = i;
target = arr[i];
while(j > 0 && target < arr[j - 1]) {
arr[j] = arr[j - 1];
j--;
}
arr[j] = target;
}
}
}
结果:
排序前:4 5 6 8 1 2
排序后:1 2 4 5 6 8
import java.util.Scanner;
public class ZheBandemo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int[] arr = { 1, 2, 3, 4, 5, 6, 8, 9 };
System.out.println("请输入你要查询的数字:");
int num = in.nextInt();
int index = findNum(num, arr);
if (index == -1) {
System.out.println("你要的查询的数字不存在!!!");
}else{
System.out.println("你要的查询的数字" + num + "的下标是" + index);
}
}
private static int findNum(int num, int[] arr) {
int minIndex = 0;
int maxIndex = arr.length - 1;
int midIndex = (minIndex + maxIndex) / 2;
while (arr[midIndex] != num) {
if (arr[midIndex] > num) {
maxIndex = midIndex - 1;
} else if (arr[midIndex] < num) {
minIndex = midIndex + 1;
}
if (minIndex > maxIndex) {
return -1;
}
midIndex = (minIndex + maxIndex) / 2;
}
return midIndex;
}
}
结果:
请输入你要查询的数字:
5
你要的查询的数字5的下标是4