编写一个JAVA程序 初始化一维数组 a =[7,5,2,9,1,3,10,6],并实现以下功能: (1)编写 bubble ()方法,用起泡法实现对数组由大到小排序; (2)编写 halfFind ()方法,用折半查找法实现对值"3"的查找。若找到进行输出,否则输出该值不存在。
时间: 2024-09-23 10:04:53 浏览: 26
在Java中,你可以按照以下步骤编写程序来实现这个需求:
```java
public class ArraySearch {
private int[] a = {7, 5, 2, 9, 1, 3, 10, 6}; // 初始化一维数组
// 使用冒泡法对数组进行降序排列
public void bubbleSort(int[] arr) {
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]) {
// 交换元素位置
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
// 使用折半查找法查找值“3”
public void halfFind(int target) {
int left = 0;
int right = a.length - 1;
while (left <= right) {
int mid = left + (right - left) / 2;
if (a[mid] == target) {
System.out.println("找到值:" + target);
return;
} else if (a[mid] < target) {
left = mid + 1;
} else {
right = mid - 1;
}
}
System.out.println("值 " + target + " 不存在");
}
public static void main(String[] args) {
ArraySearch arraySearch = new ArraySearch();
arraySearch.bubbleSort(arraySearch.a); // 对数组排序
arraySearch.halfFind(3); // 查找值3
}
}
```
在这个程序中,首先创建了一个名为`ArraySearch`的类,并在其中定义了数组`a`以及两个方法:`bubbleSort`用于对数组进行降序排序,`halfFind`用于寻找特定值`3`。在`main`方法中,我们实例化`ArraySearch`对象并分别调用这两个方法。如果找到值3,会输出“找到值:3”,否则输出“值 3 不存在”。
阅读全文