public class ArrayReverse {
// 1.数组反转(不准逆序输出)
// public static void main(String[] args) {
//int[] arr=new int[]{1,2,3,4,5};
////交换两数:数组中前后对应的数
//for (int i = 0; i <arr.length/2 ; i++) {
// int temp=arr[i];
//arr[i]=arr[arr.length-1-i];
// arr[arr.length-1-i]=temp;
// }
// System.out.println(Arrays.toString(arr));
// }
//}
//
//// 2.求最(大、小)值
// public class JiZhi
// {
// public static void main(String[] args) {
// Scanner input=new Scanner(System.in);
// int[] a=new int[10];
// System.out.println("输入十个数字:");
// for (int i = 0; i <a.length ; i++) {
// a[i]=input.nextInt();
// }
// ArrayReverse arrayReverse=new ArrayReverse();
// arrayReverse.minMethod(a);
// arrayReverse.maxMethod(a);
// }
////最小值算法
// public void minMethod(int[] a) {
// int min = a[0];//不能初始化为0 数组中可能有负数
// for (int i = 0; i < a.length; i++) {
// if (a[i] < min) {
// min = a[i];
// }
// }
// System.out.println("数组内最小的元素是:" + min);
// }
//// 最大值算
// public void maxMethod (int[] a){
// int max = a[0];//不能初始化为0 数组中可能有负数
// for (int i = 0; i < a.length; i++) {
// if (a[i] > max) {
// max = a[i];
// }
// }
// System.out.println("数组内最大的元素是:" + max);
// }
// }
//折半查找:3 5 7 9 10 14 min=0 max=length-1 mid=(max+min)/2
// public static void main(String[] args) {
// int[] a = {3, 5, 9, 10, 14};
// int index = binarySearch(a, 1);
// System.out.println(index);
// }
//
// public static int binarySearch(int[]a, int key) {
// int min = 0;
// int mid, max = a.length - 1;
// mid = (min + max) / 2;
// while (key != a[mid]) {
// if (a[mid] > key) {
// max = min - 1;
// } else if (a[mid] < key) {
// min = mid + 1;
// }
// if (max < min) {
// return -1;
// }
// }
// return mid;
// }
}
java最大值,最小值,折半查找,数组反转算法
最新推荐文章于 2022-08-20 09:59:06 发布
这篇博客探讨了数组操作的几个基本算法,包括数组反转、寻找最大值和最小值以及折半查找。在反转数组部分,通过交换数组前后对应位置的元素实现。接着,展示了如何在数组中找到最小值和最大值,初始化过程避免了使用零可能导致的错误。最后,实现了折半查找算法,用于在一个有序数组中查找目标值,提高了搜索效率。
972

被折叠的 条评论
为什么被折叠?



