(链表) lintcode 219. Insert Node in Sorted Linked List
Posted weixu-liu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(链表) lintcode 219. Insert Node in Sorted Linked List相关的知识,希望对你有一定的参考价值。
Description
Insert a node in a sorted linked list.
Example
Example 1:
Input: head = 1->4->6->8->null, val = 5
Output: 1->4->5->6->8->null
Example 2:
Input: head = 1->null, val = 2
Output: 1->2->null
---------------------------------------------------------------------
就是在一个有序的链表中插入一个数。
C++代码:
注意有表头,表中间和表尾三个情况
/** * Definition of singly-linked-list: * class ListNode { * public: * int val; * ListNode *next; * ListNode(int val) { * this->val = val; * this->next = NULL; * } * } */ class Solution { public: /** * @param head: The head of linked list. * @param val: An integer. * @return: The head of new linked list. */ ListNode * insertNode(ListNode * head, int val) { // write your code here ListNode *cur = new ListNode(val); ListNode *dummy = new ListNode(-1); dummy->next = head; if(!head) return cur; ListNode *p = dummy; while(p->next){ if(p->next->val > val) break; else p = p->next; } cur->next = p->next; p->next = cur; return dummy->next; } };
以上是关于(链表) lintcode 219. Insert Node in Sorted Linked List的主要内容,如果未能解决你的问题,请参考以下文章
219. Insert Node in Sorted Linked ListNaive