//面試題32(三):之字形列印二叉樹
//題目:請實現乙個函式按照之字形順序列印二叉樹,即第一行按照從左到右的順
//序列印,第二層按照從右到左的順序列印,第三行再按照從左到右的順序列印,
//其他行以此類推。
#include
#include
"binarytree.h
"#include
void print(binarytreenode*proot)
else
if (levels[current].empty())//
如果當前棧空了,就換一下棧的序號
}}//
********************測試**********************//8
//6 10
//5 7 9 11
void
test1()//5
//4//3
//2void
test2()//5
//4//3
//2void
test3()
void
test4()
void
test5()
//100///
//50 //\
//150
void
test6()//8
//4 12
//2 6 10 14
//1 3 5 7 9 11 13 15
void
test7()
int main(int argc, char*ar**)
劍指Offer第三十二題 把陣列排成最小的數
輸入乙個正整數陣列,把陣列裡所有數字拼接起來排成乙個數,列印能拼接出的所有數字中最小的乙個。例如輸入陣列,則列印出這三個數字能排成的最小數字為321323。思路 實際上不難,就是排序問題,但是不是按大小排序了,排序的比較方式換了而已,雖然筆者寫完能跑出來,但是寫得不好,這裡新增的是改進版思路,比較簡...
100題 第三十二 陣列 規劃
一,題目 有兩個序列a,b,大小都為n,序列元素的值任意整數,無序 要求 通過交換a,b中的元素,使 序列a元素的和 與 序列b元素的和 之間的差最小。例如 var a 100 99 98 1 2 3 var b 1,2,3,4,5,40 有兩個序列a,b,大小都為n,序列元素的值任意整數,無序 要...
劍指offer 之字形列印二叉樹
請實現乙個函式按照之字形列印二叉樹,即第一行按照從左到右的順序列印,第二層按照從右至左的順序列印,第三行按照從左到右的順序列印,其他行以此類推。利用兩個棧 定義乙個兩個棧的陣列 用current和next分別指示當前層和下一層,如果當前層是奇數層 current 0 則下一層先入棧左節點再入棧右節點...