2012-05-10 10 views
0

私の講師は、n-Queensの問題のコースノートに疑似コードを提供しています。残念ながら、私はJavaで実装するためにそれを理解するのに少し苦労しています。問題の擬似コードは次のとおりです。擬似コードのreturn文で山括弧は何を意味しますか?

Queens (currentBoard , currentRow, n) : 
    if currentRow == n: 
     if currentBoard is legal: 
      return <currentBoard, 1> 
     else: 
      return <currentBoard, 0> 
    else: 
     for k = 1..n: 
      newBoard = currentBoard + <currentRow+1, k> 
      board [k], success[k] = Queens(newBoard, currentRow+1, n) 
     kmax = index of max(success[k]) 
     return <board[kmax], success[kmax]> 

そのほとんど私は理解しますが、私は、私は角括弧内にある擬似コードの部分をどうする意図てるかわからないんだけど。

+0

私にタプルのように見えます。 – phg

答えて

4

ここで山括弧は、複数の「オブジェクト」が返されると言うだけです。

したがって、例えば、このコード一方

return <currentBoard, 1> 

戻りcurrentBoardオブジェクト他方簡単1で。このコードで

board [k], success[k] = Queens(newBoard, currentRow+1, n) 

あなたはボードに、両方のオブジェクトが別の変数に格納されていることがわかりますboard[k]になり、数がsuccess[k]に入ります。

+0

ありがとう! –

関連する問題