
首先我們介紹二叉樹先序序列化的方式,假設序列化的結果字符串為str,初始時str等于空字符串。先序遍歷二叉樹,如果遇到空節點,就在str的末尾加...
有一棵二叉樹,請設計一個算法,按照層次打印這棵二叉樹。給定二叉樹的根結點root,請返回打印結果,結果按照每一層一個數組進行儲存,所有數組的順序...
遞歸 比較簡單,直接看代碼即可. 非遞歸 先序遍歷 申請一個棧,記為s1,將頭結點壓棧. 每次從棧頂彈出節點node,打印node的值,如果no...
有一個有序數組arr,其中不含有重復元素,請找到滿足arr[i]==i條件的最左的位置。如果所有位置上的數都不滿足條件,返回-1。給定有序數組a...
給定一棵完全二叉樹的根節點root,返回這棵樹的節點個數。如果完全二叉樹的節點數為N,請實現時間復雜度低于O(N)的解法。給定樹的根結點root...
如果更快的求一個整數k的n次方。如果兩個整數相乘并得到結果的時間復雜度為O(1),得到整數k的N次方的過程請實現時間復雜度為O(logN)的方法...
定義局部最小的概念。arr長度為1時,arr[0]是局部最小。arr的長度為N(N>1)時,如果arr[0]<arr[1],那么arr[0]是局...
將一個非遞減序列的某一處切一刀,再把前半段序列放到后半段序列的后面,這樣組成的新序列叫做“旋轉數組”。要求獲取一個旋轉數組的最小值。給定數組ar...
對于一個有序數組arr,再給定一個整數num,請在arr中找到num這個數出現的最左邊的位置。給定一個數組arr及它的大小n,同時給定num。請...