89 中間ノードのチェーン
トピックリンク
出典:滞在ボタン(LeetCode)
リンクします。https://leetcode-cn.com/problems/middle-of-the-linked-list
タイトル説明
最初のノードの単一ヘッドを有する非空リストが与えられると、中間ノードのリストが返されます。
二つの中間ノードがある場合、第二の中間ノードが返されます。
例1:
入力:[1,2,3,4,5]
出力:ノード3(SEQ形:[3,4,5])のリストで
返されたノードは3です。(この評価システムは、シーケンスノードの表現である[3,4,5])。
なお、我々はその結果、型ListNode ANSのオブジェクトを返す:
。ans.val 3 =、= ans.next.val 4、ans.next.next.val = 5、及びans.next.next.next = NULL。。。
例2:
入力:[1,2,3,4,5,6]
出力:このリストのノード4(SEQ形:[4,5,6])
リストは、2つの中間ノードの値を有するので図3及び図4に示すように、我々は、第2のノードに戻ります。
キーテクノロジー
配列にリスト内の値。
トピック分析
- リストはインデックス要素によってアクセスすることができないので、そう配列にリスト、要素のリストをトラバース。
- 出力配列の中間値。
- 注:二つの中間値を、第二の中間値に戻すがある場合。
/ ** *単一リンクリストのための定義。 *関数ListNode(ヴァル){ * this.val =ヴァル。 * this.next = NULL; *} * / / ** * @param {ListNode}ヘッド * @return {ListNode} * / VAR middleNode =関数(ヘッド){ リターンIF(ヘッド!)。 RESを聞かせて= []; 一方、(ヘッド){ res.push(ヘッド) ヘッド= head.next。 } 戻りRES [Math.floor(res.length / 2)]。 }。