У меня есть вектор, в котором хранится список координатных точек. Я хотел бы подсчитать появление каждой точки в пределах определенного предела допуска. Допустим, что предел допуска был определен как 10 для значений X и Y. и вектор содержит {(100, 200), (110, 205), (115, 215), (120, 220), (100, 200), (150, 160)}. Теперь мой желаемый выход (100, 200) 3 (110, 205) 4 (115, 215) 3 (120220) 2 (150, 160) 1 Количествокол-во координатных точек в C++
Первая координатная 3 включает в себя (100, 200), (110, 205) {причина в том, что значение находится в пределах 100 + - 10 и 200 + - 10} и (100, 200) Здесь эффективность имеет высокий приоритет
Структура данных вы, вероятно, ищет это [R-Tree] (https://en.wikipedia.org/wiki/R-tree). –
спасибо за ссылку. Я думаю, это было бы идеальным решением. Открывая поиски, я обнаружил, что мне понадобится увеличить библиотеку для реализации этой структуры данных. Есть ли собственный способ сделать это в C++? – Prem
Вы не * нуждаетесь * boost библиотека. C++ - это Turing-complete, вы можете использовать его для реализации чего-либо с нуля, если вы так склонны. С другой стороны, если вы не хотите внедрять все с нуля, тогда вы будете искать стороннюю библиотеку, которая будет делать то, что вам нужно, - и тогда вы, естественно, будете зависеть от указанной библиотеки и всего, что она поворот зависит от. Именно так работает разработка программного обеспечения. –