Isih LinkedList yang diberikan
Jul 23, 2024 pm 12:43 PMmasalah
nota: kaedah sort() boleh digunakan untuk bergabung ke senarai terpaut diisih
/** * 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; } * } */ class Solution { public ListNode sortList(ListNode head) { // using merge sort on the given list return merge(head); } public ListNode merge(ListNode head) { if (head == null || head.next == null) return head; ListNode middleNode = findMiddleNode(head); ListNode next = middleNode.next; middleNode.next = null; ListNode left = merge(head); ListNode right = merge(next); ListNode sortedNode = sort(left, right); return sortedNode; } public ListNode sort(ListNode l, ListNode r) { // base case if (l == null) return r; else if (r == null) return l; ListNode result = null; if (l.val < r.val) { result = l; result.next = sort(l.next, r); } else { result = r; result.next = sort(l, r.next); } return result; } public ListNode findMiddleNode(ListNode head) { if (head == null) return head; ListNode slow = head; ListNode faster = head; // 1>2>3>null // 1>2>null // null while (faster.next != null && faster.next.next != null) { slow = slow.next; faster = faster.next.next; } return slow; } }
Atas ialah kandungan terperinci Isih LinkedList yang diberikan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?

Rangka Kerja 4 JavaScript teratas pada tahun 2025: React, Angular, Vue, Svelte

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?

Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?

Node.js 20: Peningkatan Prestasi Utama dan Ciri -ciri Baru

Iceberg: Masa Depan Jadual Data Tasik

Spring Boot Snakeyaml 2.0 CVE-2022-1471 Isu Tetap

Bagaimanakah saya dapat melaksanakan teknik pengaturcaraan berfungsi di Java?
