2016-08-09 13 views

答えて

0

配列は、ローカル変数です:

  1. あなたは再び配列を作成するときに、他側に行く
  2. 再帰的にプッシュして、アレイ上の1を置く= []
  3. プッシュ2
  4. あなたをあなたの引数の配列を送信することができますし、返されたarrを使用することができる場合は、おそらく1つだけを持つ再帰スタック配列の先頭に戻る

ayローカルのものを変更する

0

jsのインライン印刷にはヘルパー機能が必要です。このヘルパー関数は実際のpreorder関数を呼び出す必要があります。

preorderの機能の中で、文字列 "passed"(後で説明する)を常に更新しておく必要があります。現在のノードが空の場合は、現在の文字列を返す必要があります。それ以外の場合は、それを消去します。

function doPreOrder(root, str) { 
 
    if(!root) { 
 
    return str; 
 
    } 
 
    if(!str) { 
 
    str = ""; 
 
    } 
 
    if(root) { 
 
    str += root.val + ' '; 
 
    str = doPreOrder(root.left, str); 
 
    str = doPreOrder(root.right, str); 
 
    } 
 
    return str; 
 
} 
 

 
function preOrder(root) { 
 
    var x = doPreOrder(root); 
 
    console.log(x); 
 
}

あなたが見ることができるように、我々は最初の関数を使用する必要がある、とだけルートを渡します。未定義のvarを渡しています。str = ""コードを入力する唯一の時間になります。その時点から、新しいデータごとにstrが更新されます。最後に、コンソールログだけでvar。

関連する問題