這不是問題,而是聚合帖子。我如何才能實現O(1)空間和O(n)時間複雜度操作某些值類型的項目(通常是整數或字符)列表,如果我要找到n次出現的元素,排序列表或找到所有唯一值?如何查找在O(1)空間和O(n)時間成本(帶有限元素尺寸)的未排序列表中出現k次的元素
一個小紙條。這僅適用於具有固定值範圍的值類型對象(例如整數,字符等)。
UPDATE
有許多有關使用這樣的方法來實現ö問題(1)的空間和O(n)的時間複雜度排序或搜索出現的k倍,或甚至數元素時時代,或獨特的元素左右。所以,請仔細閱讀的問題,尤其是第一條語句。這是一個FAQ風格的帖子,不是一個問題。
此外,我知道答案,不需要一次又一次地發佈。如果你覺得你可以添加一些有價值的東西 - 隨時編輯題目中的問題和最長的答案(請注意,它是我自己的回答),所以它成爲一個社區維基。
相關問題:
- Finding the first non-repeated character of a string in O(n) using a boolean array?
- Find a single integer that occurs with even frequency in a given array of ints when all others occur odd with frequency
- Find if 2 strings are anagram in O(1) space and O(n) time
- Finding duplicates in O(n) time and O(1) space
- Find duplicates in an array
- O(n) algorithm to find out the element appearing more than n/2 times
我不認爲我完全理解這個問題。畢竟,你應該把它分開。例如,你如何期望在O(1)空間中使用數組?你也不能真正按小於O(n log n)的時間排序數組(儘管基數排序可以)。 –
@AdrianRatnapala,請參閱下面的答案。 – J0HN
@ J0HN我很感激你能否添加一個例子,以便我能更好地理解這個問題? – brainydexter