Блог пользователя AlexanderBolshakov

Автор AlexanderBolshakov, 10 лет назад, По-русски

Задача: у нас есть N точек на плоскости, и нам нужно для каждой точки отсортировать все остальные по полярному углу.

Вчера мной была косвенно высказана гипотеза, что эта задача может быть разрешима за O(n2). Гипотеза возникла в тот момент, когда я доказал, что различных сортировок существует O(cn2), где c — небольшая константа.

После долгих мучений придумать что-то лучше наивного алгоритма за у меня так и не получилось. Хотелось бы услышать какие-либо идеи либо насчет алгоритма, либо насчет доказательства нижней оценки .

  • Проголосовать: нравится
  • +21
  • Проголосовать: не нравится

»
10 лет назад, # |
Rev. 3   Проголосовать: нравится +27 Проголосовать: не нравится

насколько я знаю, эту задачу решает rotation tree для построения visibility графа. Описано в этой статье Overmars & Welzl, работает за O(n2)

  • »
    »
    10 лет назад, # ^ |
      Проголосовать: нравится +4 Проголосовать: не нравится

    Вроде бы, это то, что мне нужно. Спасибо большое!

    Интуиция меня не подвела :).