首先我們介紹二叉樹先序序列化的方式,假設(shè)序列化的結(jié)果字符串為str,初始時str等于空字符串金蜀。先序遍歷二叉樹,如果遇到空節(jié)點的畴,就在str的末尾加...
有一棵二叉樹渊抄,請設(shè)計一個算法,按照層次打印這棵二叉樹丧裁。給定二叉樹的根結(jié)點root护桦,請返回打印結(jié)果,結(jié)果按照每一層一個數(shù)組進(jìn)行儲存煎娇,所有數(shù)組的順序...
遞歸 比較簡單,直接看代碼即可. 非遞歸 先序遍歷 申請一個棧,記為s1,將頭結(jié)點壓棧. 每次從棧頂彈出節(jié)點node,打印node的值,如果no...
有一個有序數(shù)組arr二庵,其中不含有重復(fù)元素,請找到滿足arr[i]==i條件的最左的位置缓呛。如果所有位置上的數(shù)都不滿足條件催享,返回-1。給定有序數(shù)組a...
給定一棵完全二叉樹的根節(jié)點root哟绊,返回這棵樹的節(jié)點個數(shù)因妙。如果完全二叉樹的節(jié)點數(shù)為N,請實現(xiàn)時間復(fù)雜度低于O(N)的解法票髓。給定樹的根結(jié)點root...
如果更快的求一個整數(shù)k的n次方攀涵。如果兩個整數(shù)相乘并得到結(jié)果的時間復(fù)雜度為O(1),得到整數(shù)k的N次方的過程請實現(xiàn)時間復(fù)雜度為O(logN)的方法...
定義局部最小的概念洽沟。arr長度為1時以故,arr[0]是局部最小。arr的長度為N(N>1)時裆操,如果arr[0]<arr[1]怒详,那么arr[0]是局...
將一個非遞減序列的某一處切一刀,再把前半段序列放到后半段序列的后面跷车,這樣組成的新序列叫做“旋轉(zhuǎn)數(shù)組”棘利。要求獲取一個旋轉(zhuǎn)數(shù)組的最小值。給定數(shù)組ar...
對于一個有序數(shù)組arr朽缴,再給定一個整數(shù)num善玫,請在arr中找到num這個數(shù)出現(xiàn)的最左邊的位置。給定一個數(shù)組arr及它的大小n,同時給定num茅郎。請...