冒泡排序
/* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){
if(list1==NULL) return list2;
if(list2==NULL) return list1;
struct ListNode* temp=list1;
while(temp->next!=NULL)
{
temp=temp->next;
}
temp->next = list2;
for(struct ListNode* trun = list1; trun->next != NULL; trun=trun->next)
{
for(struct ListNode* move = list1; move->next != NULL; move = move->next)
{
if(move->val > move->next->val)
{
int temp2=move->val;
move->val = move->next->val;
move->next->val=temp2;
}
}
}
return list1;
}
如图

仅仅交换结点内的数值而非交换节点,关键还在于for循环次数。

浙公网安备 33010602011771号