还是C++
/**
* Definition of ListNode
* class ListNode {
* public:
* int val;
* ListNode *next;
* ListNode(int val) {
* this->val = val;
* this->next = NULL;
* }
* }
*/
class Solution {
public:
/*
* @param l1: ListNode l1 is the head of the linked list
* @param l2: ListNode l2 is the head of the linked list
* @return: ListNode head of linked list
*/
ListNode * mergeTwoLists(ListNode * l1, ListNode * l2) {
// write your code here
ListNode *p=l1,*p1=l1;
if(l1==NULL){
return l2;
}
if(l2==NULL){
return l1;
} //一个为NULL,直接返回另一个
for(;p->next!=NULL;){
p=p->next;
}
p->next=l2; //合并列列表
int tmp=0;
for(;p1!=NULL;){
p=l1;
for(;p->next!=NULL;){
if(p->val>p->next->val){
tmp=p->val;
p->val=p->next->val;
p->next->val=tmp;
}
p=p->next;
}
p1=p1->next;
} //排序
return l1;
}
};