精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Java編程內(nèi)功-數(shù)據(jù)結(jié)構(gòu)與算法「哈希表」

開(kāi)發(fā) 后端 算法
散列表(Hash Table,也叫哈希表),是根據(jù)關(guān)鍵碼值(Key Value)而直接進(jìn)行訪(fǎng)問(wèn)的數(shù)據(jù)結(jié)構(gòu)。

[[388064]]

 基本介紹

散列表(Hash Table,也叫哈希表),是根據(jù)關(guān)鍵碼值(Key Value)而直接進(jìn)行訪(fǎng)問(wèn)的數(shù)據(jù)結(jié)構(gòu)。也就是說(shuō),它通過(guò)把關(guān)鍵碼值映射到表中的一個(gè)位置來(lái)訪(fǎng)問(wèn)記錄,以加快查找的速度。這個(gè)映射函數(shù)叫做散列函數(shù),存放記錄的數(shù)組叫做散列表


Google上機(jī)題

有一個(gè)公司,當(dāng)有新員工來(lái)報(bào)到時(shí),要求將該員工的信息加入(id,性別,年齡,地址….),當(dāng)輸入該員工的id時(shí),要求查找該員工的所有信息。

要求:不使用數(shù)據(jù)庫(kù),盡量節(jié)省內(nèi)存,速度越快越好。

  1. package com.xie.hashtable; 
  2.  
  3. import java.util.Scanner; 
  4.  
  5. public class HashTableDemo { 
  6.     public static void main(String[] args) { 
  7.         //創(chuàng)建一個(gè)HashTab 
  8.         HashTab hashTab = new HashTab(7); 
  9.  
  10.         String key = ""
  11.         Scanner scanner = new Scanner(System.in); 
  12.         while (true) { 
  13.             System.out.println("add:添加雇員"); 
  14.             System.out.println("list:顯示雇員"); 
  15.             System.out.println("find:查找雇員"); 
  16.             System.out.println("delete:刪除雇員"); 
  17.             System.out.println("exit:退出程序"); 
  18.             key = scanner.next(); 
  19.             switch (key) { 
  20.                 case "add"
  21.                     System.out.println("輸入id"); 
  22.                     int id = scanner.nextInt(); 
  23.                     System.out.println("輸入name"); 
  24.                     String name = scanner.next(); 
  25.                     Emp emp = new Emp(id, name); 
  26.                     hashTab.add(emp); 
  27.                     break; 
  28.                 case "list"
  29.                     hashTab.list(); 
  30.                     break; 
  31.                 case "find"
  32.                     System.out.println("請(qǐng)輸入編號(hào)"); 
  33.                     int no = scanner.nextInt(); 
  34.                     hashTab.findEmpById(no); 
  35.                     break; 
  36.                 case "delete"
  37.                     System.out.println("請(qǐng)輸入編號(hào)"); 
  38.                     int deleteNo = scanner.nextInt(); 
  39.                     hashTab.deleteEmpById(deleteNo); 
  40.                     break; 
  41.                 case "exit"
  42.                     scanner.close(); 
  43.                     System.exit(0); 
  44.                     break; 
  45.                 default
  46.                     break; 
  47.             } 
  48.         } 
  49.     } 
  50.  
  51. //創(chuàng)建哈希表,管理多條鏈表 
  52. class HashTab { 
  53.     private int size
  54.     private EmpLinkedList[] empLinkedListArray; 
  55.  
  56.     public HashTab(int size) { 
  57.         this.size = size
  58.         empLinkedListArray = new EmpLinkedList[size]; 
  59.         for (int i = 0; i < size; i++) { 
  60.             empLinkedListArray[i] = new EmpLinkedList(); 
  61.         } 
  62.  
  63.     } 
  64.  
  65.     //添加雇員 
  66.     public void add(Emp emp) { 
  67.         //根據(jù)員工的id,得到該員工應(yīng)當(dāng)添加到哪條鏈表 
  68.         int empLinkedListNo = hashFun(emp.id); 
  69.         //將emp添加到對(duì)應(yīng)的鏈表 
  70.         empLinkedListArray[empLinkedListNo].add(emp); 
  71.     } 
  72.  
  73.     //查找員工 
  74.     public Emp findEmpById(int id) { 
  75.         int no = hashFun(id); 
  76.         Emp empById = empLinkedListArray[no].findEmpById(id); 
  77.         if (empById == null) { 
  78.             System.out.println("不存在id=" + id + "元素"); 
  79.             return null
  80.         } else { 
  81.             System.out.println("存在id=" + id + ",name=" + empById.name); 
  82.             return empById; 
  83.         } 
  84.     } 
  85.  
  86.     //刪除雇員 
  87.     public void deleteEmpById(int id) { 
  88.         int no = hashFun(id); 
  89.         empLinkedListArray[no].deleteEmp(id); 
  90.     } 
  91.  
  92.     //遍歷哈希表 
  93.     public void list() { 
  94.         for (int i = 0; i < size; i++) { 
  95.             empLinkedListArray[i].list(i); 
  96.         } 
  97.     } 
  98.  
  99.     //編寫(xiě)散列函數(shù),使用簡(jiǎn)單的取模法 
  100.     private int hashFun(int id) { 
  101.         return id % size
  102.     } 
  103.  
  104.  
  105. //表示雇員 
  106. class Emp { 
  107.     public int id; 
  108.     public String name
  109.     public Emp next
  110.  
  111.     public Emp(int id, String name) { 
  112.         this.id = id; 
  113.         this.name = name
  114.     } 
  115.  
  116.     @Override 
  117.     public String toString() { 
  118.         return "Emp{" + 
  119.                 "id=" + id + 
  120.                 ", name='" + name + '\'' + 
  121.                 '}'
  122.     } 
  123.  
  124. //表示鏈表 
  125. class EmpLinkedList { 
  126.     //頭指針 
  127.     private Emp head; 
  128.  
  129.     //添加雇員到鏈表 
  130.     //說(shuō)明: 
  131.     //1.當(dāng)添加雇員時(shí),id時(shí)自增的,即id分配總是從小到大,因此我們將該雇員直接加到本鏈表的最后即可 
  132.     public void add(Emp emp) { 
  133.         //如果是添加第一個(gè)雇員 
  134.         if (head == null) { 
  135.             head = emp; 
  136.         } else { 
  137.             Emp curr = head; 
  138.             while (true) { 
  139.                 if (curr.next == null) { 
  140.                     break; 
  141.                 } 
  142.                 curr = curr.next
  143.             } 
  144.             curr.next = emp; 
  145.         } 
  146.     } 
  147.  
  148.     //遍歷 
  149.     public void list(int no) { 
  150.         if (head == null) { 
  151.             System.out.println("第" + (no + 1) + "鏈表為空"); 
  152.             return
  153.         } 
  154.         System.out.print("第" + (no + 1) + "鏈表信息為:"); 
  155.         Emp curr = head; 
  156.         while (true) { 
  157.             if (curr != null) { 
  158.                 System.out.printf("=> id=%d,name=%s\t", curr.id, curr.name); 
  159.                 curr = curr.next
  160.             } else { 
  161.                 break; 
  162.             } 
  163.         } 
  164.         System.out.println(); 
  165.     } 
  166.  
  167.     //根據(jù)id查找雇員 
  168.     public Emp findEmpById(int id) { 
  169.         if (head == null) { 
  170.             System.out.println("鏈表為空"); 
  171.             return null
  172.         } 
  173.         Emp temp = head; 
  174.         while (temp != null) { 
  175.             if (temp.id == id) { 
  176.                 return temp
  177.             } 
  178.             temp = temp.next
  179.         } 
  180.         return null
  181.     } 
  182.  
  183.     //根據(jù)id刪除雇員 
  184.     public void deleteEmp(int id) { 
  185.         if (head == null) { 
  186.             System.out.println("沒(méi)有id=" + id + "的雇員"); 
  187.             return
  188.         } 
  189.         Emp curr = head; 
  190.         boolean flag = false
  191.         while (true) { 
  192.             if (curr == null) { 
  193.                 break; 
  194.             } 
  195.             if (curr.next.id == id) { 
  196.                 flag = true
  197.                 break; 
  198.             } 
  199.             curr = curr.next
  200.         } 
  201.         if (flag) { 
  202.             curr.next = curr.next.next
  203.         } else { 
  204.             System.out.println("沒(méi)有id=" + id + "的雇員"); 
  205.         } 
  206.     } 
  207.  

 【編輯推薦】

 

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2021-05-12 09:07:09

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-18 08:44:20

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-13 09:37:41

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-09 06:30:32

JAVA數(shù)據(jù)結(jié)構(gòu)算法

2021-03-23 08:33:22

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-26 08:40:28

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-12 09:13:47

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-08 06:28:57

JAVA數(shù)據(jù)結(jié)構(gòu)與算法稀疏數(shù)組

2021-03-10 08:42:19

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-15 09:36:44

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-07 09:26:37

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-16 09:40:52

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-14 08:27:40

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-22 10:07:45

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-05-13 07:34:56

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-23 09:12:09

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-11 08:53:20

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-03-24 10:41:04

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-05-08 08:28:38

Java數(shù)據(jù)結(jié)構(gòu)算法

2021-04-01 10:34:18

Java編程數(shù)據(jù)結(jié)構(gòu)算法
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

av日韩精品| 蜜桃视频网站在线观看| 国产精品一区亚洲| 日日骚久久av| 国产国语老龄妇女a片| 松下纱荣子在线观看| 国产精品免费视频一区| 不卡一区二区三区四区五区| 六月丁香激情综合| 欧美在线视屏| 亚洲视屏在线播放| 四虎永久免费观看| 久久精品97| 天天综合网 天天综合色| 视频在线99| 亚洲av无码专区在线| 日韩电影免费在线| 97精品在线视频| 麻豆天美蜜桃91| 蜜臀91精品国产高清在线观看| 日韩一区二区三| www.欧美日本| 美女av在线免费看| 怡红院av一区二区三区| 亚洲精品日韩在线观看| 午夜视频免费看| 国产成人亚洲精品狼色在线| 国产精品久久久久91| 欧美激情亚洲综合| 亚洲小说区图片区| 草民午夜欧美限制a级福利片| 黄色片网站免费| 亚洲传媒在线| 精品国产乱码久久久久久免费| 三级一区二区三区| 国产精品久久久久9999小说| 日日夜夜狠狠操| 亚洲人妖在线| 色综合视频一区中文字幕| 综合 欧美 亚洲日本| 久久99国产精品视频| 亚洲黄色www网站| 成人在线观看一区二区| 国产一区 二区| 日韩一区二区在线观看| 精品久久久99| 男女啪啪999亚洲精品| 在线视频你懂得一区| 国产日韩一区二区在线观看| av最新在线| 午夜精品在线视频一区| 一卡二卡三卡视频| 黄色成人在线网| 亚洲成人7777| 免费无码不卡视频在线观看| 久久久男人天堂| 黄色成人av网| 少妇无码av无码专区在线观看| 懂色av一区| 性做久久久久久久免费看| 国产精品免费视频网站| 成人av中文| 高清毛片aaaaaaaaa片| 岛国av在线一区| 国产麻豆一区二区三区在线观看| 日韩中文字幕观看| 91丨porny丨蝌蚪视频| 欧美重口乱码一区二区| youjizz在线播放| 中文字幕五月欧美| www婷婷av久久久影片| 青春草视频在线| 精品二区三区线观看| 国产精品视频一区二区三区四区五区| 亚洲第一影院| 精品视频色一区| 午夜激情影院在线观看| 国产一区二区三区亚洲| 日韩精品免费综合视频在线播放| 人人妻人人澡人人爽| 999久久久免费精品国产| 超碰精品一区二区三区乱码| 日韩欧美激情视频| 日韩精品91亚洲二区在线观看| 国产免费一区二区三区香蕉精| 99热这里只有精| 99re热视频这里只精品| 亚洲视频电影| 国产精彩免费视频| www.亚洲.com| 伊人夜夜躁av伊人久久| 精品视频一区二区在线| 婷婷久久免费视频| 亚洲精品久久久久久久久久久久| 男女做爰猛烈刺激| 综合一区在线| 亲爱的老师9免费观看全集电视剧| 夜夜嗨aⅴ一区二区三区| 成人一二三区视频| 五月天久久综合网| 成人免费高清观看| 欧美人狂配大交3d怪物一区| 亚洲熟女乱综合一区二区三区| 日韩久久视频| 136fldh精品导航福利| 11024精品一区二区三区日韩| 国产iv一区二区三区| 日产精品久久久一区二区| 2020国产在线视频| 在线免费观看一区| 精品国产一区在线| 欧美在线高清| 国产精品你懂得| 天堂av在线免费| 亚洲女同女同女同女同女同69| 欧美在线观看www| 日韩成人视屏| 色yeye香蕉凹凸一区二区av| 日韩黄色在线播放| 成人av在线看| 日本免费a视频| 国产精品**亚洲精品| 永久免费看mv网站入口亚洲| 日韩黄色a级片| 国产激情一区二区三区四区| 亚洲欧美日韩国产yyy| 亚洲欧美韩国| 亚洲福利视频免费观看| 欧美精品一级片| 久久99九九99精品| 亚洲欧洲日夜超级视频| 欧美中文字幕精在线不卡| 亚洲电影成人av99爱色| 免费中文字幕在线观看| 国产一本一道久久香蕉| 吴梦梦av在线| 日本黄色成人| 久久久精品久久| 国产又粗又猛又爽| 国产精品久久久久永久免费观看| 日av中文字幕| 伊人久久大香线蕉av不卡| 午夜免费日韩视频| 秋霞视频一区二区| 亚洲国产一区二区三区青草影视| 超碰人人cao| 午夜精品偷拍| 国产99午夜精品一区二区三区| а√天堂在线官网| 欧美一级高清片| 久久久精品国产sm调教网站| 国产电影精品久久禁18| 日本中文字幕一级片| 亚洲视频一起| 欧美—级高清免费播放| 六月丁香综合网| 狠狠躁夜夜躁人人爽天天天天97 | 欧美xxxx性xxxxx高清| 日韩欧美国产电影| 久久精品国产亚洲AV无码麻豆| 成人免费视频播放| 国内性生活视频| 欧美日韩伦理在线免费| 成人国产精品色哟哟| 伊人影院在线视频| 亚洲国产精品999| 中文字幕激情小说| 中文字幕欧美国产| www.桃色.com| 亚洲高清电影| 日本一区不卡| 成人在线日韩| 91精品国产色综合| 第九色区av在线| 欧美军同video69gay| 清纯粉嫩极品夜夜嗨av| av一本久道久久综合久久鬼色| 国产一区二区视频免费在线观看| 久久高清免费| 国产精品国产三级国产专区53| 天堂电影一区| 神马久久桃色视频| 日韩一卡二卡在线| 日本韩国欧美国产| 中文字幕av播放| 成人av电影在线观看| 麻豆传传媒久久久爱| 外国成人激情视频| 免费不卡在线观看| 成人xxxx视频| 阿v视频在线观看| 亚洲人成在线电影| 国产v在线观看| 色综合天天综合在线视频| 小早川怜子一区二区的演员表| 成人动漫在线一区| 四季av一区二区三区| 亚洲经典在线看| 亚洲视频精品一区| 全球av集中精品导航福利| 国产精品亚洲视频在线观看| 国产自产自拍视频在线观看 | 日韩理伦片在线| 日韩成人免费视频| 国产三级在线观看视频| 日韩欧美成人精品| 国产一级一片免费播放| 国产精品黄色在线观看| 亚洲精品女人久久久| 极品尤物av久久免费看| 99精品在线免费视频| 欧美激情在线| 一区二区日本伦理| 宅男在线一区| 久草热久草热线频97精品| vam成人资源在线观看| 国产mv久久久| 麻豆免费版在线观看| 久久99久久亚洲国产| 久操视频在线观看| 国产一区二区三区在线视频| 无码国产精品一区二区免费16| 91精品国产色综合久久不卡蜜臀| 亚洲毛片一区二区三区| 天天色综合天天| 国产亚洲精品成人| 亚洲婷婷综合色高清在线| 成人黄色a级片| 久久男人中文字幕资源站| 风韵丰满熟妇啪啪区老熟熟女| 精品一区二区三区在线观看| 99视频在线免费| 玖玖玖国产精品| 国产精品宾馆在线精品酒店| 亚洲国产国产亚洲一二三| 亚洲五码在线观看视频| 66视频精品| 强伦女教师2:伦理在线观看| 日韩一区电影| 亚洲 国产 日韩 综合一区| 精品视频97| 日韩.欧美.亚洲| 久久不卡国产精品一区二区 | 国产精品精品| 中文字幕一区二区三区四区五区六区 | av中文字幕一区二区三区| 亚洲欧美日韩精品久久| 欧美成人综合在线| 亚洲欧美在线磁力| 国产高清一区在线观看| 中文字幕在线国产精品| 麻豆视频在线| 欧美日韩成人精品| 女人天堂av在线播放| 欧美激情视频在线观看| 国产偷倩在线播放| 国产69精品久久久久9| 97人人在线视频| 青青草一区二区| 91精品国产66| 91在线观看欧美日韩| 91综合精品国产丝袜长腿久久| 国产精品久久久久久久天堂第1集 国产精品久久久久久久免费大片 国产精品久久久久久久久婷婷 | 国产不卡在线一区| aaa黄色大片| 91女厕偷拍女厕偷拍高清| 精品无码一区二区三区| 国产欧美一区视频| 国产视频精品免费| 亚洲一区在线电影| 极品国产91在线网站| 欧美视频一区二区三区在线观看| 国产熟女一区二区丰满| 亚洲国产精品va| 最新av网站在线观看| 欧美成人剧情片在线观看| 国产美女高潮在线观看| 国产99久久精品一区二区永久免费 | 亚洲伦理在线观看| 亚洲男人的天堂在线| 日本免费在线观看| 国内精品久久久| 日本精品网站| 国产亚洲自拍偷拍| 欧洲美女日日| 国产青草视频在线观看| 老司机久久99久久精品播放免费| 中日韩av在线播放| 成人教育av在线| 国产馆在线观看| 亚洲成人精品影院| 黄色一区二区视频| 精品第一国产综合精品aⅴ| 国产黄色在线| 久久免费视频网站| 欧美综合影院| 九九九九久久久久| 国产精品99在线观看| av黄色在线网站| 国产揄拍国内精品对白| 97人妻天天摸天天爽天天| 中文字幕永久在线不卡| 国产女同在线观看| 91精品在线麻豆| 国产乱视频在线观看| 欧美精品成人在线| 一区二区三区日本视频| 欧美国产综合视频| 一区在线免费观看| 天堂网成人在线| 亚洲国产精品v| xxxx.国产| 亚洲成人精品久久久| 麻豆传媒视频在线观看免费| 全球成人中文在线| 老牛精品亚洲成av人片| 日本在线视频www色| 青青草国产成人av片免费 | 国产亚洲欧美日韩俺去了| 免费中文字幕在线观看| 欧美日韩激情在线| 国产资源在线观看| 欧美一级bbbbb性bbbb喷潮片| 日韩三级精品| 大地资源网在线观看免费官网| 免费久久99精品国产| 蜜桃无码一区二区三区| 亚洲超碰精品一区二区| 亚洲第一视频在线| 久久成人这里只有精品| www.久久99| 一区二区三区四区视频在线| 天堂久久一区二区三区| 三级黄色片网站| 五月天视频一区| 婷婷五月综合激情| 97久久精品人搡人人玩| 久久精品论坛| 精品久久一二三| 91丨九色丨国产丨porny| aaa人片在线| 亚洲男女性事视频| 一级毛片久久久| 女同一区二区| 玖玖精品视频| 天堂av网手机版| 欧美日韩国产综合一区二区三区| 1769视频在线播放免费观看| 国产精品丝袜白浆摸在线| 三上亚洲一区二区| xxxx在线免费观看| 亚洲日本一区二区| www.五月天激情| 色综合91久久精品中文字幕| 午夜精品在线| 九九爱精品视频| 久久免费午夜影院| 黄色一区二区视频| 久久精品这里热有精品| 欧美日韩国产一区二区在线观看| 91传媒免费视频| www.66久久| 无码日韩精品一区二区| 亚洲性av网站| 亚洲精品一区av| 日本大片免费看| 91天堂素人约啪| 中文字幕 人妻熟女| www.亚洲人.com| 91麻豆精品激情在线观看最新 | 人人狠狠综合久久亚洲| 美女三级黄色片| 日韩欧美国产一区二区在线播放| av日韩国产| 日韩成人在线资源| 国产一区二区精品久久99| 欧美三级韩国三级日本三斤在线观看 | 青青草99啪国产免费| 久久亚洲国产| 污片免费在线观看| 欧美亚洲免费在线一区| www久久日com| 欧美日韩国产综合在线| 激情久久五月天| 国产视频91在线| 三级精品视频久久久久| 国产福利资源一区| 日韩中文字幕免费在线| 一区二区不卡在线播放| 免费在线黄色影片| 亚洲aa中文字幕| 性色一区二区三区| 欧美激情国产精品免费| 亚洲色图色老头| av一级亚洲| 激情图片中文字幕| 欧美视频二区36p| 九色91在线| 中文字幕一区综合| 久久―日本道色综合久久|