برنامه نویسی

LinkedList زوج و فرد – انجمن DEV

Summarize this content to 400 words in Persian Lang
مسئله

ما باید شاخص را حفظ کنیم i ردیابی مقادیر گره اگر i عجیب است، سپس آنها را به زبان دیگری قرار دهید odd، در غیر این صورت آنها را در یک لیست قرار دهید even.در پایان آخرین گره از لیست فرد را به head of متصل کنید even فهرست

/**
* 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;
}
}

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مسئله

ما باید شاخص را حفظ کنیم i ردیابی مقادیر گره اگر i عجیب است، سپس آنها را به زبان دیگری قرار دهید odd، در غیر این صورت آنها را در یک لیست قرار دهید even.
در پایان آخرین گره از لیست فرد را به head of متصل کنید even فهرست

/**
 * 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;
    }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا