Leetcode题库 94.二叉树的中序遍历(递归 C实现)
生活随笔
收集整理的這篇文章主要介紹了
Leetcode题库 94.二叉树的中序遍历(递归 C实现)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 解析
- 代碼
解析
中序遍歷:先左再中后右
Func函數(shù),接收一個(gè)節(jié)點(diǎn),節(jié)點(diǎn)非空,則先遍歷其左子樹(shù),再存入自身val值,最后遍歷右子樹(shù)
ret數(shù)組存儲(chǔ)每個(gè)非空節(jié)點(diǎn)的val值
pos為下一個(gè)存入ret數(shù)組的數(shù)據(jù)的下標(biāo)
代碼
void Func(struct TreeNode* p,int* ret,int* pos){if(p==NULL) return;Func(p->left,ret,pos);ret[(*pos)++]=p->val;Func(p->right,ret,pos); }int* inorderTraversal(struct TreeNode* root, int* returnSize){int* ret=(int*)malloc(sizeof(int)*100);*returnSize=0;Func(root,ret,returnSize);return ret; }總結(jié)
以上是生活随笔為你收集整理的Leetcode题库 94.二叉树的中序遍历(递归 C实现)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: GF(2^8)上的多项式乘法(Matla
- 下一篇: Leetcode题库 6.Z字形变换(C