Rumah >Java >javaTutorial >Ganjil-genap LinkedList
Masalah
Kita perlu mengekalkan indeks i menjejaki nilai nod jika saya ganjil kemudian letakkannya dalam kata ganjil yang berbeza, jika tidak letakkannya dalam senarai sebut genap.
Pada penghujung sambungkan nod terakhir senarai ganjil ke kepala senarai genap
/** * 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 oddEvenList(ListNode head) { ListNode odd = new ListNode(0); ListNode even = new ListNode(0); ListNode pointerOfOdd = odd; ListNode pointerOfEven = even; int i =1; while(head!=null){ if(i%2!=0){ odd.next = new ListNode(head.val); odd = odd.next; } else{ even.next = new ListNode(head.val); even = even.next; } i++; head = head.next; } odd.next = pointerOfEven.next; return pointerOfOdd.next; } }
Atas ialah kandungan terperinci Ganjil-genap LinkedList. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!