zoukankan      html  css  js  c++  java
  • leetcode--Rotate List

    Given a list, rotate the list to the right by k places, where k is non-negative.

    For example:
    Given 1->2->3->4->5->NULL and k = 2,
    return 4->5->1->2->3->NULL.

    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode(int x) {
     *         val = x;
     *         next = null;
     *     }
     * }
     */
    
    public class Solution {
        /**
    	 * The problem is to find the n-th nodes from end of the list.<br>
    	 * Notice that the number n may be greater than the length of the list.<br>
    	 * If this happen, we let n = n % length of the list.<br>
    	 * 
    	 * @param head --The head node of the input list
    	 * @param n --An integer. 
    	 * @return head of the rotated list.
    	 * @author Averill Zheng
    	 * @version 2014-06-03
    	 * @since JDK 1.7
    	 */
    	public ListNode rotateRight(ListNode head, int n) {
    		ListNode newHead = null;
    		//calculate the length of the list
    		if(head != null){
    			int length = 0;
    			ListNode currentNode = head;
    			while(currentNode != null){
    				++length;
    				currentNode = currentNode.next;
    			}
    			n = (n < length) ?  n :  n % length;
    			if(n > 0){
    				currentNode = head;
    				ListNode tail = null;
    				for(int i = 0; i < length - n; ++i){
    					tail = currentNode;
    					currentNode = currentNode.next;
    				}
    				newHead = currentNode;
    				while(currentNode.next != null)
    					currentNode = currentNode.next;			
    				currentNode.next = head;
    				tail.next = null;
    			}
    			else
    				newHead = head;
    		}
    		return newHead;
        }
    }
    

      

  • 相关阅读:
    python 编码与解码
    python 写文件
    python 文件读写
    python 异常处理
    python 断言
    C++的可移植性和跨平台开发
    Python中subprocess学习
    Python 的web自动化测试
    CookieJar和HTTPCookieProcessor
    python3爬虫
  • 原文地址:https://www.cnblogs.com/averillzheng/p/3769119.html
Copyright © 2011-2022 走看看