日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > leetcode Rotate List

leetcode Rotate List

來源:程序員人生   發布時間:2015-03-19 08:44:42 閱讀次數:3096次

1. 題目描寫

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.


2.解決方案1


class Solution { public: ListNode *rotateRight(ListNode *head, int k) { if(head == NULL || k <= 0) return head; //get length ListNode *temp = head; int node_count = 0; while(temp != NULL) { node_count++; temp = temp->next; } if(k > node_count) k = k%node_count; if(k == node_count || k == 0) return head; //first node move k step ListNode *first = head; while( k > 0) { first = first->next; k--; } //when first node move to last, the second node move (length - k) step ListNode *second = head; while(first->next != NULL) { first = first->next; second = second->next; } ListNode *newhead = second->next; //be a circle  first->next = head; //broken circle second->next = NULL; return newhead; } };

思路:使用了快慢指針的技能。但由于k的值有可能大于全部的長度,所以還要先求出list的長度。先用快的指針走k步,然后再把它走到尾部,這個時候慢指針就走了length - k 的步數。再頭尾相連組成環,再斷環,返回新的頭部指針。


3.解決方案2


class Solution { public: ListNode* getLastNode(ListNode *head, int& len){ ListNode* node = head; len = 1; if(head == NULL){ len = 0; return NULL; } while( node->next != NULL){ node = node->next; len++; } return node; } ListNode *rotateRight(ListNode *head, int k) { if(head == NULL){ return head; } int len; ListNode* lastNode = getLastNode(head, len); lastNode->next = head; k %= len; int step = len - k; while(step>0){ lastNode = lastNode->next; step--; } head = lastNode->next; lastNode->next = NULL; return head; } };

思路:先直接1個1個走到最后1個指針,然后連接成環,然后再行走lenght - k 的步數。再斷環。

http://www.waitingfy.com/archives/1579
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久久综合激的五月天 | a级在线| 九色综合网 | 国产精品综合一区二区 | 国产日韩av在线播放 | 日韩在线黄 | 欧美日韩精品免费观看 | 夜夜草网 | 日本一区二区不卡视频 | 一区二区三区四区不卡 | 国产一区精品视频 | 欧美久久一区 | 欧洲精品码一区二区三区免费看 | 国产精品自拍片 | 日韩成人免费观看 | wwwxx国产| 美日韩中文字幕 | 成人免费视频一区二区 | 伊人久久综合 | av片在线观看 | 在线观看一区 | 日韩福利视频 | 一区二区国产精品 | 国产精品久久久久久久一区探花 | 精品日韩中文字幕 | 欧美精品成人一区二区三区四区 | 久久久久久国产精品免费 | 一区二区三区在线观看视频 | 精品一区二区不卡 | 免费av黄 | 欧美一级xxx | 91精品国产麻豆国产自产在线 | 欧美日韩精品一区二区三区 | 国产网站av | 久久国产精品免费一区二区三区 | 日韩电影免费在线 | 欧美激情亚洲 | 精品视频网站 | 久久国产精品一区二区三区 | 精品亚洲国产成av人片传媒 | 很很鲁在线视频播放影院 |