Java 程序实现线性搜索

编写一个 Java 程序在数组上执行线性搜索。在此示例中,for 循环从头到尾遍历项目数组。

if 语句将每个数字与搜索项进行比较。如果找到匹配项,打印索引位置,break 语句会帮助 Javac 退出循环。

package Remaining;

import java.util.Scanner;

public class LinearSearch0 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		int i;
		
		sc = new Scanner(System.in);		
		
		int[] arr = {10, 20, 40, 60, 80, 100, 120, 150};
		
		System.out.print("Please Enter Number to Search =  ");
		int num = sc.nextInt();
		
		for(i = 0; i < arr.length; i++) 
		{
			if(arr[i] == num) 
			{
				System.out.println("The Index Position of " + num + " = " + i);
				break;
			}
		}
		if(i == arr.length)
		{
			System.out.println("Number Not Found");
		}
	}
}
Program to Perform a Linear Search

示例 接受用户输入的数组大小和项,并执行线性搜索以查找数字。

package Remaining;

import java.util.Scanner;

public class LinSea1 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		int Size, i;
		
		sc = new Scanner(System.in);		
		System.out.print("Please Enter the size = ");
		Size = sc.nextInt();
		
		int[] arr = new int[Size];
		
		System.out.format("Enter %d elements = ", Size);
		for(i = 0; i < Size; i++) {
			arr[i] = sc.nextInt();
		}
		
		System.out.print("Please Enter Number to Find =  ");
		int num = sc.nextInt();
		
		for(i = 0; i < arr.length; i++) 
		{
			if(arr[i] == num) 
			{
				System.out.println("The Index Position of " + num + " = " + i);
				break;
			}
		}
		if(i == arr.length)
		{
			System.out.println("Number Not Found");
		}
	}
}
Please Enter the size = 8
Enter 8 elements = 11 23 45 67 77 89 98 100
Please Enter Number to Find =  98
The Index Position of 98 = 6

此程序有助于使用函数在数组上执行线性搜索。

package Remaining;

import java.util.Scanner;

public class LinSea2 {
	private static Scanner sc;
	
	public static void main(String[] args) {
		
		sc = new Scanner(System.in);		
		System.out.print("Please Enter the size = ");
		int Size = sc.nextInt();
		
		int[] arr = new int[Size];
		
		System.out.format("Enter %d elements = ", Size);
		for(int i = 0; i < Size; i++) {
			arr[i] = sc.nextInt();
		}
		
		System.out.print("Please Enter Number to find =  ");
		int num = sc.nextInt();
		
		int result = lnSea(arr, num);
		if(result == -1)
		{
			System.out.println("Number Not Found");
		}
		else
		{
			System.out.println("The Index Position of " + num + " = " + result);

		}
	}
	
	public static int lnSea(int arr[], int num)
	{
		for(int i = 0; i < arr.length; i++) 
		{
			if(arr[i] == num) 
			{
				return i;
			}
		}
		return -1;
	}
}
Please Enter the size = 6
Enter 6 elements = 22 30 45 80 90 120
Please Enter Number to find =  90
The Index Position of 90 = 4