冒泡排序
作为排序中的Hello word过多的就不解释了直接思想:
代码展示
public static void main(String[] args) {
//冒泡排序
int[] nums={1,2,6,3,1,6,7,8,3,34,12,56,78,5,2};
int temp;
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]){
temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
for (int i = 0; i < nums.length; i++) {
System.out.println(nums[i]);
}
}
二分查找
作为排序中的Hello word过多的就不解释了直接思想
代码展示
public static void main(String[] args) {
int[] nums = {1, 3, 4, 5, 6, 7, 8, 14, 25, 36, 47};
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个数字让我来查");
int tager = scanner.nextInt();
int left = 0;
int right = nums.length - 1;
if (tager < nums[left] || tager > nums[right]) {
System.out.println("你输入的值不正确");
} else {
while (left <= right) {
int res=-1;
int mid = (left + right) / 2;
if (nums[mid] == tager) {
res = nums[mid];
System.out.println("经过二分查找数组中存在" + res);
break;
} else if (nums[mid] < tager) {
left = mid + 1;
} else if (tager < nums[mid]) {
right = mid - 1;
}
}
}
}