内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

如何使用C++實現(xiàn)單鏈表刪除倒數(shù)第k個節(jié)點的方法

這篇文章主要介紹如何使用C++實現(xiàn)單鏈表刪除倒數(shù)第k個節(jié)點的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

專業(yè)領(lǐng)域包括網(wǎng)站設(shè)計、做網(wǎng)站、商城網(wǎng)站開發(fā)、微信營銷、系統(tǒng)平臺開發(fā), 與其他網(wǎng)站設(shè)計及系統(tǒng)開發(fā)公司不同,成都創(chuàng)新互聯(lián)公司的整合解決方案結(jié)合了幫做網(wǎng)絡(luò)品牌建設(shè)經(jīng)驗和互聯(lián)網(wǎng)整合營銷的理念,并將策略和執(zhí)行緊密結(jié)合,為客戶提供全網(wǎng)互聯(lián)網(wǎng)整合方案。

具體如下:

題目:

刪除單鏈表中倒數(shù)第k個節(jié)點

解題思路及算法代碼:

標尺法,定義兩個指針指向鏈表頭結(jié)點,先讓一個走k步,然后兩個指針同時開始走,當(dāng)先走的指針走到末尾時,后走的指針指向的結(jié)點就是需要刪除的結(jié)點。

單鏈表結(jié)構(gòu)定義:

typedef struct Node
{
  int data;
  struct Node* next;
}node, *pLinkedList;

刪除倒數(shù)第K結(jié)點操作代碼:

//head表示頭結(jié)點
Node* removeLastKthNode(pLinkedList head, int k)
{
  if (NULL == head->next || k < 1)
    return head;
  pLinkedList cur = head; //1號指針
  pLinkedList ret = head; //2號指針,指向待刪除節(jié)點
  pLinkedList pre = NULL; //pdel待刪除節(jié)點的前一個節(jié)點
  /*
  head  1  2  3  4  5
  cur
  ret
  */
  while (k > 0 && cur != NULL)
  {
    k--;
    cur = cur->next;
  }
  //當(dāng)鏈表走到終點時,k仍然大于0,可知k值大于鏈表長度
  if (k > 0 && cur == NULL)
  {
    cout << "k值大于鏈表長度" << endl;
    return head;
  }
  //k == 0時,1號指針和2號指針同時走,ret即為待刪除的節(jié)點
  if (k == 0)
  {
    while (cur != NULL)
    {
      pre = ret;
      cur = cur->next;
      ret = ret->next;
    }
    /*k = 2時
    head  1    2   3    4   5  NULL
               pre   ret     cur
    即要求刪除ret節(jié)點
    */
    pre->next = ret->next;
    free(ret);
    ret = NULL;
    return head;
  }
}

以上是“如何使用C++實現(xiàn)單鏈表刪除倒數(shù)第k個節(jié)點的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

網(wǎng)站名稱:如何使用C++實現(xiàn)單鏈表刪除倒數(shù)第k個節(jié)點的方法
網(wǎng)頁鏈接:http://www.rwnh.cn/article42/jisiec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、App開發(fā)域名注冊、移動網(wǎng)站建設(shè)、服務(wù)器托管、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
平湖市| 大新县| 安顺市| 沛县| 大安市| 西畴县| 昌乐县| 兴义市| 北川| 宝坻区| 闸北区| 措勤县| 永安市| 阆中市| 浦城县| 慈溪市| 行唐县| 宁南县| 三明市| 勐海县| 通许县| 枣阳市| 揭阳市| 沅江市| 松江区| 资中县| 德昌县| 临泉县| 东莞市| 揭东县| 广昌县| 开阳县| 洛川县| 漠河县| 聂拉木县| 札达县| 巴彦县| 红河县| 清苑县| 民和| 民权县|