zoukankan      html  css  js  c++  java
  • Odd Even Linked List

    1. Title

    328. Odd Even Linked List

    2. Http address

    https://leetcode.com/problems/odd-even-linked-list/

    3. The question

    Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and not the value in the nodes.

    You should try to do it in place. The program should run in O(1) space complexity and O(nodes) time complexity.

    Example:
    Given 1->2->3->4->5->NULL,
    return 1->3->5->2->4->NULL.

    4 My code(AC)

    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) { val = x; }
     * }
     */
    public class Solution {
        public ListNode oddEvenList(ListNode head) {
            
            if (head == null)
                return head;
            if (head.next == null || head.next.next == null)
                return head;
            ListNode fisrt = head;
            ListNode second = head.next;
            ListNode cur = second.next;
            ListNode fisrtTail = fisrt;
            ListNode secondTail = second;
            boolean nextIsFirst = true;
            while(cur !=null)
            {
                if( nextIsFirst)
                {
                    fisrtTail.next = cur;
                    fisrtTail = cur;
                }else{
                    secondTail.next = cur;
                    secondTail = cur;
                }
                nextIsFirst = (!nextIsFirst);
                cur = cur.next;
            }
            fisrtTail.next = second;
            secondTail.next = null;
            return fisrt;
        
        }
    }
  • 相关阅读:
    Hbase JavaApi
    面向对象特征之继承
    重写(Override)与重载(Overload)
    数组排序
    EL表达式
    java异常
    业务代码与非业务代码
    设计思想之高内聚低耦合
    JDBC实现动态查询
    枚举
  • 原文地址:https://www.cnblogs.com/ordili/p/5509541.html
Copyright © 2011-2022 走看看