DOI QR코드

DOI QR Code

An Efficient In-Place Block Rotation Algorithm and its Complexity Analysis

효율적 In-Place Block Rotation 알고리즘과 복잡도 분석

  • Received : 2010.04.03
  • Accepted : 2010.05.16
  • Published : 2010.06.25

Abstract

The notion "block rotation" denotes the operation of exchanging two consecutive sequences of elements uv to vu. There are three already well-known block rotation algorithms called BlockRotation, Juggling and Reversal algorithm. Recently we presented a novel block rotation algorithm called QuickRotation. In this paper we compare QuickRotation to these three known block rotation algorithms. This comparison covers a complexity analysis as well as benchmarking and shows that a switch to QuickRotation is almost always advantageous.

u와 v를 두 인접수열 (consecutive sequence)이라고 했을 때 이때 "block rotation"이란 uv를 vu로 바꾸는 연산을 의미한다. 기존에 3개의 block rotation 알고리즘 즉 "BlockRotation", "Juggling" 그리고 "Reversal 알고리즘"이 소개되었는데 최근 우리는 하나의 새로운, QuickRotation 이라고 명명한 block rotation 알고리즘을 소개했다. 우리는 이 논문에서 QuickRotation 알고리즘을 이들 기존의 알고리즘들과 비교해 보이고자 한다. 벤치마킹 뿐만 아니라 복잡도 분석을 통한 비교를 통해 QuickRotation 알고리즘의 우수성을 증명해 보이고자 한다.

Keywords

References

  1. J. Bentley. Programming Pearls. Addison-Wesley, Inc, 2nd edition, 2000.
  2. K. Dudzinski and A. Dydek. “On a stable storage merging algorithm.” Information Processing Letters, 12(1):58, February 1981.
  3. P. S. Kim and A. Kutzner, “An Improved Algorithmic Solution for the Problem of Block -Rotation.” In 10th International Symposium on Advanced Intelligent Systems, pp. 161-164, Busan, Korea, August 17-19, 2009.
  4. van Leeuwen, J. “The Complexity of Data Organisation.” Mathematical Centre Tracts 81 (Mathematical Centre, Amsterdam), 1976.
  5. L. T. Pardo. "Stable sorting and merging with optimal space and time bounds," SIAM Journal on Computing, 6(2), pp. 351-372, 1977. https://doi.org/10.1137/0206025
  6. T. Cormen, C. Leiserson, R. Rivest and C. Stein, Introduction to Algorithms, MIT Press, 2001.