题解 | #单链表的排序#

单链表的排序

https://www.nowcoder.com/practice/f23604257af94d939848729b1a5cda08

import java.util.*;

/*
 * public class ListNode {
 *   int val;
 *   ListNode next = null;
 * }
 */

public class Solution {
    /**
     *
     * @param head ListNode类 the head node
     * @return ListNode类
     */
    public ListNode sortInList (ListNode head) {
        // write code here
        // ListNode newHead = new ListNode(-1);
        // newHead.next = head;
        // ListNode temp = head;
        // int length = 0;
        // while (temp != null) {
        //     length++;
        //     temp = temp.next;
        // }
        // while (length > 0) {
        //     ListNode pre = newHead;
        //     ListNode cur = newHead.next;
        //     ListNode next = cur.next;
        //     boolean flag = false;
        //     while (next != null) {
        //         if (next.val < cur.val) {
        //             cur.next = next.next;
        //             next.next = cur;
        //             pre.next = next;
        //             flag = true;
        //         }
        //         pre = pre.next;
        //         cur = pre.next;
        //         next = cur.next;
        //     }
        //     if (!flag) {
        //         break;
        //     }
        //     length--;
        // }
        // return newHead.next;
        List<Integer> list = new ArrayList<>();
        while (head != null) {
            list.add(head.val);
            head = head.next;
        }
        Collections.sort(list);
        ListNode newHead = new ListNode(-1);
        ListNode node = newHead;
        for (int i = 0; i < list.size(); i++) {
            node.next = new ListNode(list.get(i));
            node = node.next;
        }
        return newHead.next;
    }
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-10 15:24
高考前一晚在OPPO手机上设置了早上5:30的闹钟,然而闹钟并未按时响起。直到妈妈做好早餐后,在6:27打开手机才发现闹钟未触发,“气得早上饭都没吃”。资本家你赢了
永不遗忘:我来解释一下 :Oppo 手机晚上两点会自动进行系统更新,这个系统更新会重置掉所有设置好的闹钟,而且他也不会告诉你,而且只有 Oppo 会这样,华为苹果小米三星都不会
点赞 评论 收藏
分享
05-19 19:57
蚌埠学院 Python
2237:Gpa70不算高,建议只写排名,个人技能不在多而在精,缩到8条以内。项目留一个含金量高的,减少间距弄到一页,硕士简历也就一页,本科不要写很多
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务