hashtab

数据结构与算法之哈希表

…衆ロ難τιáo~ 提交于 2020-01-24 15:59:16
哈希表 google公司的一个上机题: 有一个公司,当有新的员工来报道时,要求将该员工的信息加入(id,性别,年龄,名字,住址…),当输入该员工的id时,要求查找到该员工的 所有信息. 要求: 不使用数据库,速度越快越好=>哈希表(散列) 添加时,保证按照id从低到高插入 (实际上就是叫我们创建链表数组) 代码实现 package hashtab ; import java . util . Scanner ; public class HashTabDemo { public static void main ( String [ ] args ) { // 创建哈希表 HashTab hashTab = new HashTab ( 7 ) ; // 写一个简单菜单 String key = "" ; Scanner scanner = new Scanner ( System . in ) ; while ( true ) { System . out . println ( "add: 添加雇员" ) ; System . out . println ( "list: 显示雇员" ) ; System . out . println ( "find: 查找雇员" ) ; System . out . println ( "del: 删除雇员" ) ; System . out

460. LFU缓存

妖精的绣舞 提交于 2019-11-26 17:59:26
题目地址: https://leetcode-cn.com/problems/lfu-cache/submissions/ 代码地址: https://github.com/javartisan/edx-ds/blob/master/src/main/java/com/javartisan/leetcode/LFUCache460.java class LFUCache { private static class Node{ public int key=-1; public int value=-1; public Node next; public Node lNext; public Node lBefore; public int count=1; } private int capacity; private int size; private int tabSize=15; private Node hashTab[]; private Node head; private Node tail; public LFUCache(int capacity) { this.capacity =capacity; // 参见HashMap实现,必须+1,不然7的话,如果key=7则会数组越界 hashTab =new Node[tabSize+1]; head =new