1 / 12

Const-time Search & Linear-time Sorting

Const-time Search & Linear-time Sorting. Shi-qing Xin & Guo-jin Wang 2006.10.25. Problem Description. At most n numbers, with each formatted as K=k 1 k 2 …k w (0110…) Two dimensions to describe complexity Max(a 1 ,a 2 ), Max(a 1 ,a 2 ,…a n ) Linear-time sorting?

Download Presentation

Const-time Search & Linear-time Sorting

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Const-time Search & Linear-time Sorting Shi-qing Xin & Guo-jin Wang 2006.10.25

  2. Problem Description • At most n numbers, with each formatted as K=k1k2…kw (0110…) • Two dimensions to describe complexity • Max(a1,a2), Max(a1,a2,…an) • Linear-time sorting? • Maintain a priority queue without increasing time complexity?

  3. Previous Methods • Previous search algorithms • Previous sorting algorithms • Stable sorting, comparison sorting • Is O(nlogn) the lower bound? • Radix sorting: from end; euqal word length; extra space; repeated copy; array-based and not dynamic; higher average time complexity; • Quick sorting and red-black tree

  4. Dijkstra’s algorithm • Dijkstra’s algorithm on graphs • Time complexity O(ElogE) • advantages

  5. An Ugly Method • An O(n2) method based on building a binary tree.

  6. Contradiction • An O(E+nlogn) improved version • However, the improved algorithm isn’t essential. For example, Let wij += fij(min(di, dj)) for each edge, where fij(۰) is a non-decreasing function. • The definition is correct. • The improved version doesn’t work. • Another improved version by Tarjan;

  7. Other Counter-intuitive Examples • Our work on 3d shortest path problem • What is the best sorting algorithm? • No one denies the possibility of const-time search and linear-time sorting; • Unreasonable array & hash table; • Unreasonable binary search & Fibonacci search; • How do we percept?

  8. Goal of Our Algorithm • No empty position, linear space • A limited depth indepent of n • Dynamic search, deletion, insertion can be done in const time. • Extract the min/max element in const time. • Linear-time traversal • Visit k-th elem in const time • Reflect inherent similarity

  9. Operations on RBT • Search an elem • Insert an elem • Delete a given elem • Extract the min/max element; • Read the k-th element • Traversal • Extract a group of similar elements

  10. Applications • Complexity theory, graphs, computational geometry; for example, shortest path problem in 2D or 3D. • Design efficient algorithms • Computer design • Database & data structure & language • AI • And so on

  11. Criticisms • Array, hash table, B- tree & B+ tree, balanced tree, huffman tree, read-black tree, suffix array sorting, binary search, k-ary heap, Fibonacci heap, etc. • Computer design: excessively digitized;

  12. Thank you!

More Related