RU2014148287A - Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем - Google Patents

Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем Download PDF

Info

Publication number
RU2014148287A
RU2014148287A RU2014148287A RU2014148287A RU2014148287A RU 2014148287 A RU2014148287 A RU 2014148287A RU 2014148287 A RU2014148287 A RU 2014148287A RU 2014148287 A RU2014148287 A RU 2014148287A RU 2014148287 A RU2014148287 A RU 2014148287A
Authority
RU
Russia
Prior art keywords
level
tree
quadrant tree
quadrant
objects
Prior art date
Application number
RU2014148287A
Other languages
English (en)
Other versions
RU2602970C2 (ru
Inventor
Антон Васильевич КОРЗУНОВ
Original Assignee
Общество С Ограниченной Ответственностью "Яндекс"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Яндекс" filed Critical Общество С Ограниченной Ответственностью "Яндекс"
Priority to RU2014148287/08A priority Critical patent/RU2602970C2/ru
Priority to PCT/IB2015/051804 priority patent/WO2016087951A1/en
Priority to US14/921,034 priority patent/US9507877B2/en
Publication of RU2014148287A publication Critical patent/RU2014148287A/ru
Application granted granted Critical
Publication of RU2602970C2 publication Critical patent/RU2602970C2/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

1. Реализуемый на компьютере способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список, дерево квадрантов, включающее в себя элементы дерева квадрантов, каждый из которых является одним из: узел дерева квадрантов и лист дерева квадрантов, способ, включающий:- размещение в односвязном списке первого, второго, третьего и четвертого маркеров первого уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам первого уровня дерева квадрантов;- размещение в односвязном списке объектов, хранящихся в любом из: первом, втором, третьем и четвертом элементе первого уровня дерева квадрантов, соответственно после первого, второго, третьего и четвертого маркера первого уровня.2. Способ по п. 1, в котором n-элемент дерева квадрантов, являющийся одним из: первый элемент первого уровня дерева квадрантов, второй элемент первого уровня дерева квадрантов, третий элемент первого уровня дерева квадрантов и четвертый элемент первого уровня дерева квадрантов, включает в себя четыре элемента второго уровня дерева квадрантов, в способе дополнительно выполняют:- размещение в односвязном списке первого, второго, третьего и четвертого маркеров второго уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам второго уровня дерева квадрантов, после одного из:- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредственно следующего за ним первого маркера третьего уровня, когда четвертый элемент второго уровня дерева квадрантов является узлом дерева квадрантов;- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредс

Claims (22)

1. Реализуемый на компьютере способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список, дерево квадрантов, включающее в себя элементы дерева квадрантов, каждый из которых является одним из: узел дерева квадрантов и лист дерева квадрантов, способ, включающий:
- размещение в односвязном списке первого, второго, третьего и четвертого маркеров первого уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам первого уровня дерева квадрантов;
- размещение в односвязном списке объектов, хранящихся в любом из: первом, втором, третьем и четвертом элементе первого уровня дерева квадрантов, соответственно после первого, второго, третьего и четвертого маркера первого уровня.
2. Способ по п. 1, в котором n-элемент дерева квадрантов, являющийся одним из: первый элемент первого уровня дерева квадрантов, второй элемент первого уровня дерева квадрантов, третий элемент первого уровня дерева квадрантов и четвертый элемент первого уровня дерева квадрантов, включает в себя четыре элемента второго уровня дерева квадрантов, в способе дополнительно выполняют:
- размещение в односвязном списке первого, второго, третьего и четвертого маркеров второго уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам второго уровня дерева квадрантов, после одного из:
- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредственно следующего за ним первого маркера третьего уровня, когда четвертый элемент второго уровня дерева квадрантов является узлом дерева квадрантов;
- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредственно следующего за ним другого маркера того же уровня, когда n-элемент первого уровня дерева квадрантов является одним из: первым, вторым и третьим элементом первого уровня дерева квадрантов, и когда четвертый элемент второго уровня дерева квадрантов является листом дерева квадрантов;
- четвертого маркера первого уровня, когда n-элемент первого уровня дерева квадрантов является четвертым элементом первого уровня дерева квадрантов и когда четвертый элемент второго уровня дерева квадрантов является листом дерева квадрантов;
- размещение, в односвязном списке, объектов, хранящихся в любом из: первом, втором, третьем и четвертом элементе второго уровня дерева квадрантов, соответственно после первого, второго, третьего и четвертого маркера второго уровня.
3. Способ по любому из пп. 1-2, в котором дополнительно выполняют:
- получение нового объекта,
- размещение указанного нового объекта в o-элементе дерева квадрантов,
- размещение указанного нового объекта в односвязном списке после маркера, относящегося к o-элементу дерева квадрантов.
4. Способ по любому из пп. 1-2, в котором объектом является тег графического объекта.
5. Способ по любому из пп. 1-2, в котором элемент дерева квадрантов дополнительно включает в себя указатель на маркер в односвязном списке, относящийся к этому элементу дерева квадрантов.
6. Способ по любому из пп. 1-2, в котором n-элемент дерева квадрантов, являющийся материнским элементом, имеет четыре элемента второго уровня дерева квадрантов, являющихся дочерними элементами, способ, в котором дополнительно получают запрос пользователя на предоставление пользователю списка объектов, расположенных в указанном n-элементе дерева квадрантов и во всех указанных четырех дочерних элементах второго уровня дерева квадрантов.
7. Способ по п. 6, в котором запрос пользователя осуществляется путем выбора пользователем соответствующего фрагмента пространства.
8. Способ по п. 6, в котором дополнительно определяют n-элемент дерева квадрантов как соответствующий соответствующему фрагменту пространства, выбранному пользователем, причем, упомянутое определение осуществляют путем выбора сервером самого мелкого элемента дерева квадрантов из всех элементов дерева квадрантов, территориально охватывающих выбранный пользователем фрагмент пространства полностью.
9. Способ по п. 8, в котором дополнительно предоставляют пользователю список объектов, расположенных в указанном n-элементе дерева квадрантов и во всех указанных четырех дочерних элементах второго уровня дерева квадрантов, путем предоставления пользователю объектов, расположенных в односвязном списке в определенном промежутке, причем указанный промежуток определяется как один из:
- промежуток, начиная с маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до следующего маркера первого уровня, когда n-элемент дерева квадрантов является одним из: первым, вторым и третьим элементом первого уровня дерева квадрантов;
- промежуток, начиная с четвертого маркера первого уровня, относящегося к n-элементу дерева квадрантов, и заканчивая последним объектом в односвязном списке, включая этот последний объект, когда n-элемент дерева квадрантов является четвертым элементом первого уровня дерева квадрантов.
10. Способ по любому из пп. 1-2, в котором множество объектов в любом из элементов второго уровня дерева квадрантов является постоянным, в способе дополнительно выполняют преобразование той части односвязного списка, в которой размещено это множество объектов, в массив, причем размерность указанного массива равна количеству объектов в указанном множестве объектов, и причем указанный определенный элемент дерева квадрантов второго уровня включает в себя множество индексов, каждый из которых соответствует определенному объекту из указанного множества объектов.
11. Способ по п. 8, в котором множество объектов в любом из элементов второго уровня дерева квадрантов является постоянным, в способе дополнительно выполняют преобразование той части односвязного списка, в которой размещено это множество объектов, в массив, причем размерность указанного массива равна количеству объектов в указанном множестве объектов, и причем указанный определенный элемент дерева квадрантов второго уровня включает в себя множество индексов, каждый из которых соответствует определенному объекту из указанного множества объектов.
12. Способ по п. 11, в котором по меньшей мере в одном из дочерних элементов n-элемента дерева квадрантов множество объектов является постоянным, и в котором дополнительно предоставляют пользователю список объектов, расположенных в указанном n-элементе первого уровня дерева квадрантов и во всех указанных четырех дочерних элементах второго уровня дерева квадрантов, путем предоставления пользователю объектов, расположенных в:
- односвязном списке в определенном промежутке, причем указанный промежуток определяется как один из: промежуток, начиная с маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до следующего маркера первого уровня, когда n-элемент дерева квадрантов является одним из: первым, вторым и третьим элементом первого уровня дерева квадрантов; промежуток, начиная с маркера первого уровня, относящегося к n-элементу дерева квадрантов, и заканчивая последним объектом в односвязном списке, включая этот последний объект, когда n-элемент дерева квадрантов является четвертым элементом первого уровня дерева квадрантов; и
- во всех массивах, созданных в результате преобразования по меньшей мере одного из дочерних элементов n-элемента дерева квадрантов, содержащего постоянное множество объектов.
13. Способ по любому из пп. 1-2, в котором первым уровнем дерева квадрантов является любой уровень дерева квадрантов, начиная с корневого уровня дерева квадрантов включительно, и вторым уровнем дерева квадрантов является более низкий уровень дерева квадрантов, который непосредственно следует за первым уровнем дерева квадрантов.
14. Способ по любому из пп. 11-12, в котором первым уровнем дерева квадрантов является любой уровень дерева квадрантов, начиная с корневого уровня дерева квадрантов включительно, и вторым уровнем дерева квадрантов является более низкий уровень дерева квадрантов, который непосредственно следует за первым уровнем дерева квадрантов.
15. Компьютер, включающий в себя процессор, выполненный с возможностью:
- размещения в односвязном списке первого, второго, третьего и четвертого маркеров первого уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам первого уровня дерева квадрантов;
- размещения в односвязном списке объектов, хранящихся в любом из: первом, втором, третьем и четвертом элементе первого уровня дерева квадрантов, соответственно после первого, второго, третьего и четвертого маркера первого уровня.
16. Компьютер по п. 15, в котором процессор дополнительно выполнен с возможностью:
- размещения в односвязном списке первого, второго, третьего и четвертого маркеров второго уровня, относящихся соответственно к первому, второму, третьему и четвертому элементам второго уровня дерева квадрантов, после одного из:
- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредственно следующего за ним первого маркера третьего уровня, когда четвертый элемент второго уровня дерева квадрантов является узлом дерева квадрантов;
- маркера первого уровня, относящегося к n-элементу дерева квадрантов, и до непосредственно следующего за ним другого маркера того же уровня, когда n-элемент первого уровня дерева квадрантов является одним из: первым, вторым и третьим элементом первого уровня дерева квадрантов, и когда четвертый элемент второго уровня дерева квадрантов является листом дерева квадрантов;
- четвертого маркера первого уровня, когда n-элемент первого уровня дерева квадрантов является четвертым элементом первого уровня дерева квадрантов и когда четвертый элемент второго уровня дерева квадрантов является листом дерева квадрантов;
- размещения, в односвязном списке, объектов, хранящихся в любом из: первом, втором, третьем и четвертом элементе второго уровня дерева квадрантов, соответственно после первого, второго, третьего и четвертого маркера второго уровня.
17. Компьютер по любому из пп. 15-16, в котором процессор дополнительно выполнен с возможностью:
- получения нового объекта,
- размещения указанного нового объекта в o-элементе дерева квадрантов,
- размещения указанного нового объекта в односвязном списке после маркера, относящегося к o-элементу дерева квадрантов.
18. Компьютер по любому из пп. 15-16, в котором процессор дополнительно выполнен с возможностью получения запроса пользователя на предоставление пользователю списка объектов, расположенных в указанном n-элементе дерева квадрантов и во всех указанных четырех дочерних элементах второго уровня дерева квадрантов.
19. Компьютер по п. 18, в котором в котором процессор дополнительно выполнен с возможностью определения n-элемента дерева квадрантов как соответствующего соответствующему фрагменту пространства, выбранному пользователем.
20. Компьютер по любому из пп. 15-16, в котором процессор дополнительно выполнен с возможностью преобразования той части односвязного списка, в которой размещено множество объектов, в массив, причем размерность указанного массива равна количеству объектов в указанном множестве объектов.
21. Компьютер по п. 19, в котором процессор дополнительно выполнен с возможностью преобразования той части односвязного списка, в которой размещено множество объектов, в массив, причем размерность указанного массива равна количеству объектов в указанном множестве объектов.
22. Компьютер по п. 21, в котором процессор дополнительно выполнен с возможностью предоставления пользователю списка объектов, расположенных в указанном n-элементе первого уровня дерева квадрантов и во всех указанных четырех дочерних элементах второго уровня дерева квадрантов.
RU2014148287/08A 2014-12-01 2014-12-01 Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем RU2602970C2 (ru)

Priority Applications (3)

Application Number Priority Date Filing Date Title
RU2014148287/08A RU2602970C2 (ru) 2014-12-01 2014-12-01 Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем
PCT/IB2015/051804 WO2016087951A1 (en) 2014-12-01 2015-03-12 Method of and system for storing spatial objects
US14/921,034 US9507877B2 (en) 2014-12-01 2015-10-23 Method of and system for storing spatial objects

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2014148287/08A RU2602970C2 (ru) 2014-12-01 2014-12-01 Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем

Publications (2)

Publication Number Publication Date
RU2014148287A true RU2014148287A (ru) 2016-06-27
RU2602970C2 RU2602970C2 (ru) 2016-11-20

Family

ID=56091085

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2014148287/08A RU2602970C2 (ru) 2014-12-01 2014-12-01 Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем

Country Status (2)

Country Link
RU (1) RU2602970C2 (ru)
WO (1) WO2016087951A1 (ru)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319743A (en) * 1992-04-02 1994-06-07 Digital Equipment Corporation Intelligent and compact bucketing method for region queries in two-dimensional space
US5461712A (en) * 1994-04-18 1995-10-24 International Business Machines Corporation Quadrant-based two-dimensional memory manager
US5671406A (en) * 1995-10-18 1997-09-23 Digital Equipment Corporation Data structure enhancements for in-place sorting of a singly linked list
US7035802B1 (en) * 2000-07-31 2006-04-25 Matsushita Electric Industrial Co., Ltd. Recognition system using lexical trees
EP1431919B1 (en) * 2002-12-05 2010-03-03 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding three-dimensional object data by using octrees
US8214371B1 (en) * 2003-07-18 2012-07-03 Teradata Us, Inc. Spatial indexing
US8441494B2 (en) * 2009-04-23 2013-05-14 Vmware, Inc. Method and system for copying a framebuffer for transmission to a remote display

Also Published As

Publication number Publication date
WO2016087951A1 (en) 2016-06-09
RU2602970C2 (ru) 2016-11-20

Similar Documents

Publication Publication Date Title
Liu et al. Ranking higher taxa using divergence times: a case study in Dothideomycetes
Seidel A holistic approach to determine tree structural complexity based on laser scanning data and fractal analysis
Muellner-Riehl et al. Molecular phylogenetics and molecular clock dating of Sapindales based on plastid rbcL, atpB and trnL-trnF DNA sequences
ES2640926T3 (es) Asistencia a un usuario para seleccionar un diseño de dispositivo de iluminación
Crowl et al. A global perspective on Campanulaceae: Biogeographic, genomic, and floral evolution
RU2015148847A (ru) Способ и устройство для идентификации и сообщения местоположений
Oberlander et al. Species‐rich and polyploid‐poor: Insights into the evolutionary role of whole‐genome duplication from the Cape flora biodiversity hotspot
Bacon et al. Geographic and taxonomic disparities in species diversity: Dispersal and diversification rates across Wallace's line
JP2017087676A5 (ja) 画像処理装置及びその方法及びプログラム
JP2018521387A5 (ru)
RU2017106979A (ru) Устройство обработки информации, способ обработки информации и программа
Kang et al. The effect of forest-thinning works on tree growth and forest environment
Gonçalves et al. Historical biogeography of Vochysiaceae reveals an unexpected perspective of plant evolution in the Neotropics
JP2018079358A5 (ru)
Mokbel et al. A demonstration of MNTG-A web-based road network traffic generator
JP2013097395A5 (ru)
RU2014148287A (ru) Способ организации множества объектов, содержащихся в дереве квадрантов, в односвязный список и компьютер, используемый в нем
RU2014135305A (ru) Способ и система для обработки входных команд пользователя
EP2573713A3 (en) Image processing device, method and program
RU2014137333A (ru) Способ пространственного хранения объекта посредством гибкой иерархической структуры и постоянный носитель информации
JP2016528607A5 (ru)
Song et al. An index for measuring functional diversity in plant communities based on neural network theory
AR102700A1 (es) Selección de técnicas de divergencia en función de características de pozo ponderado
Kuswandi et al. Population structures of four tree species in loggpopulation structures of four tree species in logged-over tropical forest in South Papua, Indonesia: An integral projection model approach
RU2015111653A (ru) Способ и система для модификации текста в документе