148. Sort List

Description

Given the head of a linked list, return the list after sorting it in ascending order.

Follow up: Can you sort the linked list in O(n logn) time and O(1) memory (i.e. constant space)?

Constraints

  • The number of nodes in the list is in the range [0, 5 * 104].

  • -105 <= Node.val <= 105

Approach

  • GeeksforGeeks

  • ProgramCreek

  • YouTube

Examples

Input: head = [4, 2, 1, 3]

Output: [1, 2, 3, 4]

Solutions

// Definition for singly-linked list.
public class ListNode {
    int val;
    ListNode next;
    
    ListNode() {}
    
    ListNode(int val) {
        this.val = val;
    }
    
    ListNode(int val, ListNode next) {
        this.val = val;
        this.next = next;
    }
}

Follow up

Last updated

Was this helpful?