子序列不同於子數組
子數組一定是連續的,子序列不一定是連續的。
字符串的子串也是連續的。
長度爲n的數組
非空子數組的個數:n*(n+1)/2
非空子序列的個數:2^n-1
長度爲n的字符串
非空子串的個數:n*(n+1)/2
複雜度
時間複雜度:
程序運行的時間隨着問題規模的擴大增長得有多快。
一個元素個數爲n的數組,其排序的時間複雜度爲O(nlogn)
非多項式級時間複雜度
指數級複雜度,如O(2^n),O(3 ^n)
全排列算法,複雜度爲O(n!)
多項式級時間複雜度
O(1),O(n),O(n*log(n)),O(n^2), O(n ^3)等
哈希集合查找時間複雜度爲O(1)
哈希表的更新和存儲時間複雜度也是O(1)
最小堆和最大堆
入和出的時間複雜度爲O(logn),n爲節點的個數
不同排序法的時間和空間複雜度:
Java的Map中只能存object,因此Map<Interger, Interger>而不能寫Map<Int, Int>,因爲Int是primary reference
更新中…