{"title":"高效率的I/ o矩形段搜索","authors":"G. Das, B. Nickerson","doi":"10.1109/ICCSA.2010.35","DOIUrl":null,"url":null,"abstract":"We consider the I/O-efficient rectangular segment search problem in 2D. The problem involves storing a given set ${\\cal S}$ of $N$ line segments in a data structure such that an axis aligned rectangular range query ${\\cal R}$ can be performed efficiently; i.e., report all line segments in ${\\cal S}$ which intersect ${\\cal R}$. We give a data structure requiring space $O(N(N/B)^2)$ disk blocks that can answer a range query ${\\cal R}$ using $O(log_B N + K/B)$ I/Os, where $B$ is the number of line segments transferred in one I/O, and $K$ is the number of line segments intersecting ${\\cal R}$. Search complexity of $O(log_B (N/B) + K/B)$ I/Os can be achieved with reduced storage if the set ${\\cal S}$ contains only non-intersecting line segments, orif set ${\\cal S}$ contains only horizontal and vertical line segments. In the former case the space complexity is $O((N/B)^2)$ disk blocks and in the latter case the space complexity is $O(N \\frac{\\log N}{\\log\\log_B N})$.We also consider the problem of finding all the line segments which are entirely within the rectangle ${\\cal R}$ if the set ${\\cal S}$ contains only vertical and horizontal line segments. For this problem, an optimal data structure is presented with size $O(N \\frac{\\log N}{\\log\\log_B N})$ disk blocks that requires $O(log_B (N/B) + K/B)$ I/Os to answer the query.","PeriodicalId":405597,"journal":{"name":"2010 International Conference on Computational Science and Its Applications","volume":"9 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"I/O-Efficient Rectangular Segment Search\",\"authors\":\"G. Das, B. Nickerson\",\"doi\":\"10.1109/ICCSA.2010.35\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"We consider the I/O-efficient rectangular segment search problem in 2D. The problem involves storing a given set ${\\\\cal S}$ of $N$ line segments in a data structure such that an axis aligned rectangular range query ${\\\\cal R}$ can be performed efficiently; i.e., report all line segments in ${\\\\cal S}$ which intersect ${\\\\cal R}$. We give a data structure requiring space $O(N(N/B)^2)$ disk blocks that can answer a range query ${\\\\cal R}$ using $O(log_B N + K/B)$ I/Os, where $B$ is the number of line segments transferred in one I/O, and $K$ is the number of line segments intersecting ${\\\\cal R}$. Search complexity of $O(log_B (N/B) + K/B)$ I/Os can be achieved with reduced storage if the set ${\\\\cal S}$ contains only non-intersecting line segments, orif set ${\\\\cal S}$ contains only horizontal and vertical line segments. In the former case the space complexity is $O((N/B)^2)$ disk blocks and in the latter case the space complexity is $O(N \\\\frac{\\\\log N}{\\\\log\\\\log_B N})$.We also consider the problem of finding all the line segments which are entirely within the rectangle ${\\\\cal R}$ if the set ${\\\\cal S}$ contains only vertical and horizontal line segments. For this problem, an optimal data structure is presented with size $O(N \\\\frac{\\\\log N}{\\\\log\\\\log_B N})$ disk blocks that requires $O(log_B (N/B) + K/B)$ I/Os to answer the query.\",\"PeriodicalId\":405597,\"journal\":{\"name\":\"2010 International Conference on Computational Science and Its Applications\",\"volume\":\"9 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2010-03-23\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2010 International Conference on Computational Science and Its Applications\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ICCSA.2010.35\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 International Conference on Computational Science and Its Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICCSA.2010.35","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
We consider the I/O-efficient rectangular segment search problem in 2D. The problem involves storing a given set ${\cal S}$ of $N$ line segments in a data structure such that an axis aligned rectangular range query ${\cal R}$ can be performed efficiently; i.e., report all line segments in ${\cal S}$ which intersect ${\cal R}$. We give a data structure requiring space $O(N(N/B)^2)$ disk blocks that can answer a range query ${\cal R}$ using $O(log_B N + K/B)$ I/Os, where $B$ is the number of line segments transferred in one I/O, and $K$ is the number of line segments intersecting ${\cal R}$. Search complexity of $O(log_B (N/B) + K/B)$ I/Os can be achieved with reduced storage if the set ${\cal S}$ contains only non-intersecting line segments, orif set ${\cal S}$ contains only horizontal and vertical line segments. In the former case the space complexity is $O((N/B)^2)$ disk blocks and in the latter case the space complexity is $O(N \frac{\log N}{\log\log_B N})$.We also consider the problem of finding all the line segments which are entirely within the rectangle ${\cal R}$ if the set ${\cal S}$ contains only vertical and horizontal line segments. For this problem, an optimal data structure is presented with size $O(N \frac{\log N}{\log\log_B N})$ disk blocks that requires $O(log_B (N/B) + K/B)$ I/Os to answer the query.