eg1
package Fri;
import java.util.Scanner;
public class Fri01 {
public static void main(String[] args) {
int[] arr = { 28, 12, 45, 76, 89, 54, 90, 4, 21, 56 };
try (Scanner input = new Scanner(System.in)) {
System.out.println("请输入目标元素:");
int target = input.nextInt();
int index = -1;
for (int i = 0; i < arr.length; i++) {
if (arr[i] == target) {
index++;
break;
}
}
System.out.printf("目标元素%d的下标位置是%d",target,index);
}
}
}
eg2双指针查找
package Fri;
//无序数组中指定元素的查找
import java.util.Scanner;
public class Fri02 {
public static void main(String[] args) {
//双指针查找
String[] singer = { "李荣浩", "杰克拘役", "周杰伦", "邓紫棋", "孙燕姿", "方大同", "王菲" };
try (Scanner input = new Scanner(System.in)) {
System.out.println("请输入目标元素:");
String target = input.next();
int index = -1;//默认下标为-1,表示不存在
for (int i = 0, k = singer.length - 1; i <= k; i++, k--) {
//String字符串的等值比较
//从头开始比较
if (singer[i].equals(target)) {
index = i;
break;
}
//从尾开始比较
if (singer[k].equals(target)) {
index = k;
break;
}
}
System.out.println(index);
}
}
}
eg3
package Fri;
import java.util.Scanner;
public class Fri03 {
public static void main(String[] args) {
int[] arr = { 28, 12, 45, 76, 89, 54, 90, 4, 21, 56 };
try (Scanner input = new Scanner(System.in)) {
System.out.println("请输入目标元素:");
int target = input.nextInt();
int index = -1;
for (int i = 0, k = arr.length - 1; i <= k; i++, k--) {
if (arr[i] == target) {
index = i;
break;
}
if (arr[k] == target) {
index = k;
break;
}
}
System.out.println(index);
}
}
}