{"title":"哈希表性能的实证研究","authors":"Dapeng Liu, Zengdi Cui, Shaochun Xu, Huafu Liu","doi":"10.1109/ICIS.2014.6912180","DOIUrl":null,"url":null,"abstract":"Hash table is a valuable data structure that is expected to provide constant amortized access time. Although there are a lot of researches on hashing, it seems there is no enough practical study on its stability with large data set. In this paper, we conducted a few experiments to study the performance of hashing with a large set of data and compared the results of different collision approaches. Our experiments revealed a few new phenomena. The experiment results leans to close addressing than open addressing by a huge edge and deem linear probing impractical due to its low performance. When items are randomly distributed with keys in a large space, different hash algorithms might produce similar performance. Increasing randomness in keys does not help hash table performance either. These discoveries might be able to provide heuristics to programmers on how to design software products using hash tables.","PeriodicalId":237256,"journal":{"name":"2014 IEEE/ACIS 13th International Conference on Computer and Information Science (ICIS)","volume":"78 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-06-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"8","resultStr":"{\"title\":\"An empirical study on the performance of hash table\",\"authors\":\"Dapeng Liu, Zengdi Cui, Shaochun Xu, Huafu Liu\",\"doi\":\"10.1109/ICIS.2014.6912180\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Hash table is a valuable data structure that is expected to provide constant amortized access time. Although there are a lot of researches on hashing, it seems there is no enough practical study on its stability with large data set. In this paper, we conducted a few experiments to study the performance of hashing with a large set of data and compared the results of different collision approaches. Our experiments revealed a few new phenomena. The experiment results leans to close addressing than open addressing by a huge edge and deem linear probing impractical due to its low performance. When items are randomly distributed with keys in a large space, different hash algorithms might produce similar performance. Increasing randomness in keys does not help hash table performance either. These discoveries might be able to provide heuristics to programmers on how to design software products using hash tables.\",\"PeriodicalId\":237256,\"journal\":{\"name\":\"2014 IEEE/ACIS 13th International Conference on Computer and Information Science (ICIS)\",\"volume\":\"78 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-06-04\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"8\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2014 IEEE/ACIS 13th International Conference on Computer and Information Science (ICIS)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICIS.2014.6912180\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 IEEE/ACIS 13th International Conference on Computer and Information Science (ICIS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICIS.2014.6912180","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
An empirical study on the performance of hash table
Hash table is a valuable data structure that is expected to provide constant amortized access time. Although there are a lot of researches on hashing, it seems there is no enough practical study on its stability with large data set. In this paper, we conducted a few experiments to study the performance of hashing with a large set of data and compared the results of different collision approaches. Our experiments revealed a few new phenomena. The experiment results leans to close addressing than open addressing by a huge edge and deem linear probing impractical due to its low performance. When items are randomly distributed with keys in a large space, different hash algorithms might produce similar performance. Increasing randomness in keys does not help hash table performance either. These discoveries might be able to provide heuristics to programmers on how to design software products using hash tables.