我有一個前序遍歷功能,看起來像這樣:後順序/前序遍歷樹
void listInPreOrder(node* hd){
if(hd != NULL) {
printf("%d, ", hd->value);
listInPreOrder(hd->left);
listInPreOrder(hd->right);
}
}
,其實工作原理,但我認爲這使得它提交訂單會如這樣簡單
void listInPostOrder(node* hd){
if(hd != NULL) {
listInPreOrder(hd->left);
listInPreOrder(hd->right);
printf("%d, ", hd->value);
}
}
不過遺憾的是它不工作這麼好。我想知道如何解決這個問題,也許我正在做一些簡單的錯誤。或者,也許這是完全錯誤的。
你是什麼意思? –
@OstapHnatyuk,你沒有改變遞歸調用...... – StoryTeller
這兩個代碼是相同的,只是將打印行轉換到底部。也嘗試發佈其他代碼,因爲很難通過函數調用來確定故障。例如。你如何構建節點... –