内のノード間の要素のカウント数Iは、STLアルゴリズムSTDと同様System.Collections.Generic.LinkedListに開始ノードと終了ノードとの間のノードの合計数を計算します。 :C++でをカウントします(ただし、カウントにエンドノードを含めるつもりはありません)。C番号:LinkedListの
私は把握できませんでした。 「mustn、
var counter = 1;
var node = iStartNode;
while (!ReferenceEquals(node, iEndNode))
{
node = node.Next;
++counter;
}
しかし、より効率的なソリューションが存在しなければならない:どのように効率的にこの数を計算するために、任意のLINQの拡張メソッドを使用するので、私は(すべてヌルとの整合性チェックを除く)は、このようなカウンタを実装していますそこに?どんな提案も高く評価されます。
もっと効率的なソリューションが必要な理由は何でしょうか? –
おそらく、_efficient_の代わりに_compact_という単語を使用していたはずです。パフォーマンスの観点からは、おそらく上記の解決策はOKですか? –
パフォーマンスの観点からは、問題ありません。あなたが他の場所で役に立つかもしれないいくつかの拡張メソッドを持っていれば、よりコンパクトな表現について私の答えを見てください。 –