剑指offer 面试题25 输出和为某值的路径

来源:互联网 发布:java shiro盐值加密 编辑:程序博客网 时间:2024/05/01 22:08


struct BinaryTreeNode{int data;BinaryTreeNode *left;BinaryTreeNode *right;};void FindPath_core(BinaryTreeNode *pNode,int sum,int currentsum,std::vector<int> path){currentsum+=pNode->data;path.push_back(pNode->data);if(!pNode->left && !pNode->right && currentsum==sum){std::vector<int>::iterator iter=path.begin();while(iter!=path.end()){cout<<*iter<<' ';iter++;}cout<<'\n';}if(pNode->left)FindPath(pNode->left,sum,currentsum,path);if(pNode->right)FindPath(pNode->right,sum,currentsum,path);currentsum-=pNode->data;path.pop_back();}void FindPath(BinaryTreeNode *pRoot,int sum){if(pRoot==NULL) return;int currentsum=0;std::vector<int> path;FindPath_core(pRoot,sum,currentsum,path);}


0 0
原创粉丝点击