真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C語言數(shù)據(jù)結構旋轉鏈表的實現(xiàn)

C語言數(shù)據(jù)結構旋轉鏈表的實現(xiàn)

專業(yè)成都網(wǎng)站建設公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!創(chuàng)新互聯(lián)為您提供成都網(wǎng)站建設,五站合一網(wǎng)站設計制作,服務好的網(wǎng)站設計公司,網(wǎng)站設計、網(wǎng)站建設負責任的成都網(wǎng)站制作公司!

實例:

給出鏈表1->2->3->4->5->null和k=2

返回4->5->1->2->3->null

分析

感覺很直觀,直接把分割點找出來就行,記得k可能大于len,要取模

代碼:

/** 
 * Definition for singly-linked list. 
 * struct ListNode { 
 *   int val; 
 *   ListNode *next; 
 *   ListNode(int x) : val(x), next(NULL) {} 
 * }; 
 */ 
class Solution { 
public: 
  /** 
   * @param head: the list 
   * @param k: rotate to the right k places 
   * @return: the list after rotation 
   */ 
  ListNode *rotateRight(ListNode *head, int k) { 
    // write your code here 
    if(head==NULL) 
      return head; 
    int len = 0; 
    ListNode*temp = head; 
    while(temp) 
    { 
      len++; 
      temp = temp->next; 
    } 
    k%=len; 
    if(k==0) 
      return head; 
    k = len-k; 
    temp = head; 
    while(k>1) 
    { 
      temp = temp->next; 
      k--; 
    } 
    ListNode*newStart = temp->next; 
    temp->next = NULL; 
    temp = newStart; 
    while(temp->next) 
      temp = temp->next; 
    temp->next = head; 
    return newStart; 
  } 
}; 

 以上就是C語言數(shù)據(jù)結構旋轉鏈表的實現(xiàn),如有疑問請留言或者到本站社區(qū)交流討論,本站關于數(shù)據(jù)結構的文章還有很多,希望大家搜索查閱,大家共同進步!


名稱欄目:C語言數(shù)據(jù)結構旋轉鏈表的實現(xiàn)
標題來源:http://weahome.cn/article/geessd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部