| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #include <string>
- #include <vector>
- struct TreeNode {
- int val;
- TreeNode *left;
- TreeNode *right;
- TreeNode() : val(0), left(nullptr), right(nullptr) {}
- TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
- TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}
- };
- std::string
- treenode_to_str(TreeNode *root)
- {
- if ( root == NULL ) { return "nil"; }
- std::string ret;
- ret += "TreeNode(";
- ret += std::to_string(root->val);
- ret += ", ";
- ret += treenode_to_str(root->left);
- ret += ", ";
- ret += treenode_to_str(root->right);
- ret += ")";
- return ret;
- }
- template<typename T>
- std::string
- vector_to_str(std::vector<T> vec)
- {
- std::string ret = "[";
- for ( unsigned long i = 0; i < vec.size(); ++i ) {
- if ( i == 0 ) { ret += "\""; ret += std::to_string(vec[i]); ret += "\""; continue; }
- ret += ", \""; ret += std::to_string(vec[i]); ret += "\"";
- }
- ret += "]";
- return ret;
- }
|