Leet Code OJ 129 求根到葉子結點數字和

DFS,總感覺自己的代碼寫的很奇怪(ಥ﹏ಥ) 

vector<int> r;
int cnt = 0;
int dfs(TreeNode* root)
{
	if (root==NULL)
		return 1;
	
	if (root != NULL)
	{
		r.push_back(root->val);
		if (dfs(root->left) + dfs(root->right) == 2)
			for (int i = 0; i < r.size(); i++)
				cnt += r[r.size() - i - 1] * pow(10, i);
		r.pop_back();
	}
	return 0;
}
int sumNumbers(TreeNode* root)
{
	if (root == NULL)
		return 0;
	dfs(root);
	return cnt;
}

 

發佈了115 篇原創文章 · 獲贊 16 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章