ネクタイLintCodeアルゴリズムの問題の答え-219.ソートチェーンテーブルにノードを挿入


ネクタイLintCodeアルゴリズムの問題の答え-219.ソートチェーンテーブルにノードを挿入

目次

  • 219. ソートチェーンテーブルにノード
  • を挿入する
  • 感謝
  • 219.ソートチェーンテーブルにノードを挿入する


    チェーンテーブルにノードを挿入します.
    サンプル1:
    入力:head=1->4->6->8->null、val=5出力:1->4->5->6->8->null
    サンプル2:
    入力:head=1->null、val=2出力:1->2->null
    /**
     * Definition for ListNode
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) {
     *         val = x;
     *         next = null;
     *     }
     * }
     */
    
    public class Solution {
         
        /**
         * @param head: The head of linked list.
         * @param val: An integer.
         * @return: The head of new linked list.
         */
        public ListNode insertNode(ListNode head, int val) {
         
            // write your code here
             if (head == null) {
         
        		return new ListNode(val);
    		}
    		if (val <= head.val) {
         
    			ListNode node = new ListNode(val);
    			node.next = head;
    			return node;
    		}
    		ListNode node = head;
    		while (node.next != null) {
         
    			ListNode nextNode = node.next;
    			if (val < nextNode.val) {
         
    				node.next = new ListNode(val);
    				node.next.next = nextNode;
    				return head;
    			}
    			node = nextNode;
    		}
    
    		node.next = new ListNode(val);
    
    		return head;
        }
    }
    

    原題リンクはこちら

    に感謝


    この文章を読むのに時間を費やしてくれてありがとう.本人のレベルは限られているので、何か間違っているところがあれば、指摘してください.皆さん、コメント討論を歓迎します.皆さんが毎日少し進歩することを望んでいます.