劍指 offer 32 - i. 從上到下列印二叉樹
思路:利用雙端佇列,每次從雙端佇列的隊頭取出節點,如果該節點存在左子樹和右子樹,則加入隊尾。
vector<
int>
levelorder
(treenode* root)
; vector<
int>res;
deque>dequetreenode;
dequetreenode.
push_back
(root)
;while
(dequetreenode.
size()
)return res;
}
劍指 offer 32 - ii. 從上到下列印二叉樹 ii
bfs:
vectorint>>
levelorder
(treenode* root)
; vectorint>>res;
queue>nodes;
nodes.
push
(root)
;while
(!nodes.
empty()
)if(node-
>right!=
nullptr)}
res.
push_back
(tmp);}
return res;
}
dfs:
void
dfs(treenode*root,vectorint>>
&res,
int level)
vectorint>>
levelorder
(treenode* root)
劍指 offer 32 - iii. 從上到下列印二叉樹 iii
vectorint>>
levelorder
(treenode* root)
else
out.
push_back
(node-
>val)
; n--;}
flag=
!flag;
res.
push_back
(out);}
return res;
}
劍指offer32 醜數
把只包含質因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含質因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第n個醜數。題意理解 1.直接法。逐個判斷每個整數是不是醜數的解法,直觀但不夠高效 所謂乙個數m是另乙個數n的因子,是指n能被m整除,...
leetcode刷題 劍指offer 32題
從上到下列印出二叉樹的每個節點,同一層的節點按照從左到右的順序列印。例如 給定二叉樹 3,9,20,null,null,15,7 3 9 20 15 7返回 3,9,20,15,7 新手上路,才學疏淺,望斧正 利用乙個佇列實現 class solution queue.add root while ...
劍指Offer 32 陣列中的逆序對
在陣列中的兩個數字,如果前面乙個數字大於後面的數字,則這兩個數字組成乙個逆序對。輸入乙個陣列,求出這個陣列中的逆序對的總數p。並將p對1000000007取模的結果輸出。即輸出p 1000000007 題目保證輸入的陣列中沒有的相同的數字 對於 50的資料,size 10 4 對於 75的資料,si...