If an operation has an amortized time of O(1), can it ever, worst-case, take O(N^2) time?
Can an operation that takes O(1) amortized time have worst-case O(n^2) time?
439 views Asked by bst-for-life At
1
There are 1 answers
Related Questions in COMPLEXITY-THEORY
- Sorting complexity
- Determinating Complexity time
- Probability mass of summing two discrete random variables, in linearithmic time
- A little help finding the complexity of time and and complexity of space
- Most efficient way to print differences of two arrays?
- Calculating the Recurrence Relation T(n)=T(n / log n) + Θ(1)
- How can I tell how many times these nested statements will execute?
- Complexity of this greedy algorithm to find the maximum independent set of a graph
- What is the complexity of this piece of code
- Ways to measure bit sequence complexity
Related Questions in TIME-COMPLEXITY
- Time complexity of the algorithm?
- Shell Vs. Hibbard time complexity comparison
- Time complexity of swapping elements in a python list
- constant time complexity: O(x^c)
- Java TreeMap time complexity - lowerKey
- Complexity of LSD string sort (cfr. Algorithms by Sedgewick & Wayne)
- How to search a unknown composite key for dictionary in O(1) in c#
- Confusion about why NP is contained in PSPACE, EXPTIME etc
- Depth first search or backtrack recursion for finding all possible combination of letters in a crossword puzzle/boggle board?
- Time complexity of nested for loops
Related Questions in ASYMPTOTIC-COMPLEXITY
- TIme complexity of various nested for loops
- Time complexity of if-else statements in a for loop
- Why does this loop return a value that's O(n log log n) and not O(n log n)?
- Asymptotic complexity for typical expressions
- Have I properly sorted these runtimes in order of growth?
- Asymptotic complexity of binary heaps implemented with sets vs. priority queues
- Complexity of for loop
- Complexity of these two nested for loops
- Overall Big-O complexity of a while loop, with inner step that increases with every loop
- Asymptotic time complexity of recursive function (Theta)
Related Questions in AMORTIZED-ANALYSIS
- Asymptotic complexity of binary heaps implemented with sets vs. priority queues
- Find the amortized complexity of a Hash function
- Understanding Amortized Time and why array inserts are O(1)
- Doubling and incremental strategy while implementing stack using linked list and arrays?
- Create a potential function for an abstract queue data structure to show constant amortized-time complexity
- Equivalent data structures with same bounds in worst case (vs. amortized)
- Questions on the design and analysis of Fibonacci heaps
- Amortized worst case complexity of binary search
- Can an operation that takes O(1) amortized time have worst-case O(n^2) time?
- How can I ensure amortized O(n) concatenation from Data.Vector?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Yes, it can. Amortized complexity takes into account the frequency with which the worst case appears. Thus as soon as the worst case appears in about 1 in
N^2operations the amortized complexity will be constant.Let's take a simple example - the dynamically expanding array(I will call that
vectoras it is called in c++) in most languages has an amortized constant time for pushing an element to its back. Most of the time pushing an element is a simple assignment of a value, but once in a while all the elements allocated will be assigned and we need to re-allocate the vector. This would be the worst case of apush_backoperation and when that happens the operation is with linear complexity. Still the way vector grows makes sure that re-allocation is infrequent enough. Each time the vector is re-allocated it doubles its size. Thus before another re-allocation happens we will havensimple push_back operations(assumingnwas the capacity of the vector before re-allocation). As a result the worst case of linear complexity appears at most once in a linear number of operations.Analogously to the case above imagine a data structure that re-allocates in O(n^2), but makes sure that re-allocation is performed at most once in n^2 constant operations. This would be an example of an operation with amortized complexity of O(1) and worst-case complexity O(N^2).