/** * struct ListNode { * int val; * struct ListNode *next; * }; * * C语言声明定义全局变量请加上static,防止重复定义 */ /** * * @param head ListNode类 the head node * @return ListNode类 */ struct ListNode* sortInList(struct ListNode* head ) { // write code here struct ListNode * tmp = head; struct ListNode * p1 = tmp; struct ListNode * p2 = p1->next; int temp = 0; if(head == NULL){ return head; } if(head->next == NULL){ return head; } for(;p1 != NULL; p1 = p1->next) { for(p2 = p1->next; p2 != NULL; p2 = p2->next) { if(p1->val > p2->val) { temp = p1->val; p1->val = p2->val; p2->val = temp; } } } return head; }