Java实现哈希查找算法

 Java实现哈希查找算法

下面是一个简单的Java代码示例,实现了哈希查找算法:

import java.util.HashMap;

public class HashSearch {
    
    // 哈希查找函数
    public static int hashSearch(int[] array, int target) {
        // 创建一个HashMap用于存储数组元素及其对应的索引
        HashMap<Integer, Integer> map = new HashMap<>();
        
        // 遍历数组,将元素及其索引放入HashMap中
        for (int i = 0; i < array.length; i++) {
            map.put(array[i], i);
        }
        
        // 查找目标值是否在HashMap中存在
        if (map.containsKey(target)) {
            // 如果存在,返回目标值在数组中的索引
            return map.get(target);
        } else {
            // 如果不存在,返回-1表示未找到
            return -1;
        }
    }
    
    public static void main(String[] args) {
        int[] array = {4, 7, 2, 9, 1, 5, 8, 3, 6};
        int target = 5;
        int index = hashSearch(array, target);
        
        if (index != -1) {
            System.out.println("目标值 " + target + " 在数组中的索引为: " + index);
        } else {
            System.out.println("未找到目标值 " + target);
        }
    }
}

在这个示例中,我们使用了HashMap来实现哈希查找算法。首先,我们遍历数组,将数组元素作为键,元素在数组中的索引作为值,存储在HashMap中。然后,我们可以通过目标值在HashMap中查找其索引,如果存在则返回索引,否则返回-1表示未找到。

 Java实现哈希查找算法

下面是一个简单的Java代码示例,实现了哈希查找算法:

import java.util.HashMap;

public class HashSearch {
    
    // 哈希查找函数
    public static int hashSearch(int[] array, int target) {
        // 创建一个HashMap用于存储数组元素及其对应的索引
        HashMap<Integer, Integer> map = new HashMap<>();
        
        // 遍历数组,将元素及其索引放入HashMap中
        for (int i = 0; i < array.length; i++) {
            map.put(array[i], i);
        }
        
        // 查找目标值是否在HashMap中存在
        if (map.containsKey(target)) {
            // 如果存在,返回目标值在数组中的索引
            return map.get(target);
        } else {
            // 如果不存在,返回-1表示未找到
            return -1;
        }
    }
    
    public static void main(String[] args) {
        int[] array = {4, 7, 2, 9, 1, 5, 8, 3, 6};
        int target = 5;
        int index = hashSearch(array, target);
        
        if (index != -1) {
            System.out.println("目标值 " + target + " 在数组中的索引为: " + index);
        } else {
            System.out.println("未找到目标值 " + target);
        }
    }
}

在这个示例中,我们使用了HashMap来实现哈希查找算法。首先,我们遍历数组,将数组元素作为键,元素在数组中的索引作为值,存储在HashMap中。然后,我们可以通过目标值在HashMap中查找其索引,如果存在则返回索引,否则返回-1表示未找到。

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在