{"title":"一种近似文本到模式汉明距离的简单算法","authors":"T. Kopelowitz, E. Porat","doi":"10.4230/OASIcs.SOSA.2018.10","DOIUrl":null,"url":null,"abstract":"The algorithmic task of computing the Hamming distance between a given pattern of length m and each location in a text of length n, both over a general alphabet \\Sigma, is one of the most fundamental algorithmic tasks in string algorithms. The fastest known runtime for exact computation is \\tilde O(n\\sqrt m). We recently introduced a complicated randomized algorithm for obtaining a (1 +/- eps) approximation for each location in the text in O( (n/eps) log(1/eps) log n log m log |\\Sigma|) total time, breaking a barrier that stood for 22 years. In this paper, we introduce an elementary and simple randomized algorithm that takes O((n/eps) log n log m) time.","PeriodicalId":93491,"journal":{"name":"Proceedings of the SIAM Symposium on Simplicity in Algorithms (SOSA)","volume":"20 1","pages":"10:1-10:5"},"PeriodicalIF":0.0000,"publicationDate":"2018-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"19","resultStr":"{\"title\":\"A Simple Algorithm for Approximating the Text-To-Pattern Hamming Distance\",\"authors\":\"T. Kopelowitz, E. Porat\",\"doi\":\"10.4230/OASIcs.SOSA.2018.10\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The algorithmic task of computing the Hamming distance between a given pattern of length m and each location in a text of length n, both over a general alphabet \\\\Sigma, is one of the most fundamental algorithmic tasks in string algorithms. The fastest known runtime for exact computation is \\\\tilde O(n\\\\sqrt m). We recently introduced a complicated randomized algorithm for obtaining a (1 +/- eps) approximation for each location in the text in O( (n/eps) log(1/eps) log n log m log |\\\\Sigma|) total time, breaking a barrier that stood for 22 years. In this paper, we introduce an elementary and simple randomized algorithm that takes O((n/eps) log n log m) time.\",\"PeriodicalId\":93491,\"journal\":{\"name\":\"Proceedings of the SIAM Symposium on Simplicity in Algorithms (SOSA)\",\"volume\":\"20 1\",\"pages\":\"10:1-10:5\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2018-01-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"19\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the SIAM Symposium on Simplicity in Algorithms (SOSA)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.4230/OASIcs.SOSA.2018.10\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the SIAM Symposium on Simplicity in Algorithms (SOSA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.4230/OASIcs.SOSA.2018.10","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 19
摘要
计算长度为m的给定模式和长度为n的文本中每个位置之间的汉明距离的算法任务,都是在通用字母表\Sigma上,是字符串算法中最基本的算法任务之一。精确计算的已知最快运行时间为\tilde O(n \sqrt m)。我们最近引入了一种复杂的随机算法,用于在O((n/eps) log(1/eps) log n log m log | \Sigma |)总时间内获得文本中每个位置的(1 +/- eps)近似值,打破了持续22年的障碍。在本文中,我们介绍了一个简单的初等随机化算法,耗时O((n/eps) log n log m)。
A Simple Algorithm for Approximating the Text-To-Pattern Hamming Distance
The algorithmic task of computing the Hamming distance between a given pattern of length m and each location in a text of length n, both over a general alphabet \Sigma, is one of the most fundamental algorithmic tasks in string algorithms. The fastest known runtime for exact computation is \tilde O(n\sqrt m). We recently introduced a complicated randomized algorithm for obtaining a (1 +/- eps) approximation for each location in the text in O( (n/eps) log(1/eps) log n log m log |\Sigma|) total time, breaking a barrier that stood for 22 years. In this paper, we introduce an elementary and simple randomized algorithm that takes O((n/eps) log n log m) time.