南海林家 發表於 2021-6-26 21:39:00

Leetcode 86 分割链表

<p><img src="https://img2020.cnblogs.com/blog/1858706/202106/1858706-20210626213707817-1897845619.png" alt="" width="500" height="391" loading="lazy"></p>
<p>  JAVA:</p>
<div class="cnblogs_code">
<pre>      <span style="color: rgba(0, 0, 255, 1)">public</span> <span style="color: rgba(0, 0, 255, 1)">final</span> ListNode partition(ListNode head, <span style="color: rgba(0, 0, 255, 1)">int</span><span style="color: rgba(0, 0, 0, 1)"> x) {
            ListNode leftHead </span>= <span style="color: rgba(0, 0, 255, 1)">new</span> ListNode(), rightHead = <span style="color: rgba(0, 0, 255, 1)">new</span><span style="color: rgba(0, 0, 0, 1)"> ListNode(),
                  left </span>= leftHead, right =<span style="color: rgba(0, 0, 0, 1)"> rightHead;
            </span><span style="color: rgba(0, 0, 255, 1)">while</span> (head != <span style="color: rgba(0, 0, 255, 1)">null</span><span style="color: rgba(0, 0, 0, 1)">) {
                </span><span style="color: rgba(0, 0, 255, 1)">if</span> (head.val &lt;<span style="color: rgba(0, 0, 0, 1)"> x) {
                  left.next </span>=<span style="color: rgba(0, 0, 0, 1)"> head;
                  left </span>=<span style="color: rgba(0, 0, 0, 1)"> left.next;
                } </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> {
                  right.next </span>=<span style="color: rgba(0, 0, 0, 1)"> head;
                  right </span>=<span style="color: rgba(0, 0, 0, 1)"> right.next;
                }
                head </span>=<span style="color: rgba(0, 0, 0, 1)"> head.next;
            }
            right.next </span>= <span style="color: rgba(0, 0, 255, 1)">null</span><span style="color: rgba(0, 0, 0, 1)">;
            left.next </span>=<span style="color: rgba(0, 0, 0, 1)"> rightHead.next;
            </span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)"> leftHead.next;
      }</span></pre>
</div>
<p>  JS:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*
* Definition for singly-linked list.
* function ListNode(val, next) {
*   this.val = (val===undefined ? 0 : val)
*   this.next = (next===undefined ? null : next)
* }
</span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">*
* @param {ListNode} head
* @param {number} x
* @return {ListNode}
</span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 0, 255, 1)">var</span> partition = <span style="color: rgba(0, 0, 255, 1)">function</span><span style="color: rgba(0, 0, 0, 1)"> (head, x) {
    let leftHead </span>= <span style="color: rgba(0, 0, 255, 1)">new</span> ListNode(), rightHead = <span style="color: rgba(0, 0, 255, 1)">new</span><span style="color: rgba(0, 0, 0, 1)"> ListNode(),
      left </span>= leftHead, right =<span style="color: rgba(0, 0, 0, 1)"> rightHead;
    </span><span style="color: rgba(0, 0, 255, 1)">while</span> (head != <span style="color: rgba(0, 0, 255, 1)">null</span><span style="color: rgba(0, 0, 0, 1)">) {
      </span><span style="color: rgba(0, 0, 255, 1)">if</span> (head.val &lt;<span style="color: rgba(0, 0, 0, 1)"> x) {
            left.next </span>=<span style="color: rgba(0, 0, 0, 1)"> head;
            left </span>=<span style="color: rgba(0, 0, 0, 1)"> left.next;
      } </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> {
            right.next </span>=<span style="color: rgba(0, 0, 0, 1)"> head;
            right </span>=<span style="color: rgba(0, 0, 0, 1)"> right.next;
      }
      head </span>=<span style="color: rgba(0, 0, 0, 1)"> head.next;
    }
    right.next </span>= <span style="color: rgba(0, 0, 255, 1)">null</span><span style="color: rgba(0, 0, 0, 1)">;
    left.next </span>=<span style="color: rgba(0, 0, 0, 1)"> rightHead.next;
    </span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)"> leftHead.next;
};</span></pre>
</div>
<p><img src="https://img2020.cnblogs.com/blog/1858706/202106/1858706-20210626213914725-716825585.png" alt="" width="490" height="189" loading="lazy"></p>

</div>
<div id="MySignature" role="contentinfo">
    当你看清人们的真相,于是你知道了,你可以忍受孤独<br><br>
来源:https://www.cnblogs.com/niuyourou/p/14939263.html
頁: [1]
查看完整版本: Leetcode 86 分割链表