2P by neo 1달전 | ★ favorite | 댓글 1개

소개

  • 새로운 알고리듬이 도서관 정렬 문제를 해결하는 방법을 제시함.
  • 이 문제는 단순히 책을 정렬하는 것뿐만 아니라, 하드 드라이브와 데이터베이스의 파일 배열에도 적용됨.
  • 새로운 접근법은 책장의 과거 내용과 무작위성을 결합하여 이론적 이상에 가까운 결과를 도출함.

경계 좁히기

  • 잘 정렬된 책장을 측정하는 일반적인 방법은 개별 항목을 삽입하는 데 걸리는 시간을 보는 것임.
  • 1981년 논문에서는 평균 삽입 시간이 n보다 훨씬 적은 알고리듬을 설계할 수 있는지에 대한 질문을 제기함.
  • 2004년 연구에서는 도서관 정렬 문제의 최적 하한이 log n임을 발견함.
  • 매끄럽거나 결정적인 알고리듬으로는 (log n)²보다 나은 평균 삽입 시간을 달성할 수 없음을 보여줌.

비밀의 역사

  • 2022년, Bender와 동료들은 무작위적이고 비매끄러운 알고리듬을 시도하여 평균 삽입 시간을 (log n)¹.⁵로 줄임.
  • 이 알고리듬은 과거의 책장 기록에 의존하지 않으며, 이는 보안상의 이유로 유용할 수 있음.

격차 줄이기

  • Bender와 Kuszmaul은 상한을 (log n) × (log log n)³로 낮추어 이론적 하한에 매우 근접함.
  • 이 알고리듬은 제한된 정도의 역사 의존성을 사용하여 미래의 사건을 계획함.
  • 이 결과는 이전 연구를 기반으로 하여 무작위성을 완전히 다른 방식으로 사용함.

결론

  • 이 연구는 이론적 측면에서 중요한 개선을 나타내며, 응용 측면에서도 큰 개선 가능성을 가짐.
  • 여전히 log log n 용어가 완전한 해결책을 방해하고 있으며, 상한을 낮추거나 하한을 높이는 것이 해결책이 될 수 있음.
Hacker News 의견
  • 암호화 기술이 성능을 향상시키는 데 사용될 수 있다는 점이 흥미로움. 성능은 단순히 더 많은 명령을 실행하는 것이 아니라, 어떻게 일을 덜 할지를 선택하는 것임. "역사 독립성"이라는 보안 속성은 과거를 추적하는 작업을 하지 않음을 의미함

  • 기사에 언급된 주요 논문을 찾는 것이 어려움. Quanta가 모든 참고 문헌을 기사 끝에 나열하도록 하면 독자에게 도움이 될 것임

    • [1] Nearly Optimal List Labeling: 링크
    • [2] A sparse table implementation of priority queues: 링크
  • 데이터베이스 테이블에서 항목을 임의로 배치하는 문제를 해결하기 위해 복잡한 알고리즘이 존재함. 그러나 이 문제의 간단한 해결책은 분수 값을 사용하고 가끔 리스트를 재배치하는 것임

  • 'Library Sort' 알고리즘을 기반으로 학생들에게 문제를 제시했던 기억이 있음. 원 논문의 제목은 'Insertion Sort is O(n log n)'임

  • 현재 사용 중인 알고리즘보다 실제로 더 빠를 이유가 있는지 의문임. B-tree 노드의 배열에서는 memmove()를 사용하는 것이 더 빠를 수 있음. 큰 배열의 경우 B 트리를 사용하는 것이 더 쉬움

  • 문제 진술이 고정 길이의 미리 할당된 배열을 가정하는지 궁금함

  • 영국 도서관이 책을 관리하는 방식에 놀라움. 책이 도착하면 전자 카탈로그가 나머지를 처리하여 책을 재배치할 필요가 없음

  • 기사 상단의 애니메이션을 화면 보호기로 만들고 싶음

  • 모바일 사용자를 위한 깨끗한 링크 제공

  • 상한을 (log n) 곱하기 (log log n)^3으로 낮추는 것이 사실임. 다항식 참조 클래스를 사용한 big-O 복잡성에서 로그가 무한소 값을 제공하는 것이 흥미로움