The most elegant way to print a Binary Tree

来源:互联网 发布:linux命令是否进行安装 编辑:程序博客网 时间:2024/05/16 15:52
class TreeNode {public:  int val;  TreeNode *left;  TreeNode *right;  TreeNode(int x) : val(x), left(NULL), right(NULL) {}};void display(TreeNode* root, int col = 0) {  if(root == 0)        return;  display(root->right, col + 1);  for(int i = 0; i < col; ++i)       std::cout<<"| ";  cout<<"|"<<root->val<<std::endl;  display(root->left, col + 1);}int main() {  TreeNode *root = new TreeNode(0);  root->left = new TreeNode(1);  root->right = new TreeNode(2);  root->left->left = new TreeNode(3);  root->left->right = new TreeNode(4);  root->right->left = new TreeNode(5);  root->right->right = new TreeNode(6);  root->right->right->right = new TreeNode(7);  display(root);  return 0;}

0 0
原创粉丝点击