题解 | #二叉树的前序遍历#
二叉树的前序遍历
https://www.nowcoder.com/practice/5e2135f4d2b14eb8a5b06fab4c938635
/**
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
/*
总结,刚开始是想用个数组存储读取到的值,然后返回数组就好,一直不明白returnSize的含义,借鉴了讨论区的代码才明白,这个变量代表返回数组的长度。
*/
static int count=0;
static int arr[10000];
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param root TreeNode类
* @return int整型一维数组
* @return int* returnSize 返回数组行数
*/
int* preorderTraversal(struct TreeNode* root, int* returnSize ) {
// write code here
//先根次序 先左再右
if(root==NULL) return NULL;
if(root->val=='#') return NULL;
arr[count]=root->val;count++;*returnSize=count;
preorderTraversal(root->left,returnSize);
preorderTraversal(root->right,returnSize);
return arr;
}

