expression tree to string
生活随笔
收集整理的這篇文章主要介紹了
expression tree to string
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
+
/ \
1 *
/ \
5 6
這樣的。要返回1+(5*6)
struct TreeNode {TreeNode * left, *right;string val;TreeNode(string i) :val(i), left(NULL), right(NULL){} };bool IsOperator(const string & c) {if (c.length() > 1 || (c[0] >= '0' && c[0] <= '9')){return false;}return true; }string ExpressionTreeToString(TreeNode * node) {if (node == NULL)return "";string ret = node->val;if (IsOperator(node->val)){if (node->left){if (IsOperator(node->left->val)){ret.insert(0, "(" + ExpressionTreeToString(node->left) + ")");}else{ret.insert(0, ExpressionTreeToString(node->left));}}if (node->right){if (IsOperator(node->right->val)){ret += "(" + ExpressionTreeToString(node->right) + ")";}else{ret += ExpressionTreeToString(node->right);}}}return ret; }?
轉載于:https://www.cnblogs.com/jobfindingnotes/p/4116629.html
總結
以上是生活随笔為你收集整理的expression tree to string的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【模拟】周游列国
- 下一篇: 2793 [Poi2012]Vouche