亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C++刪除鏈表中間節(jié)點(diǎn)的方法

 更新時(shí)間:2017年05月09日 14:41:05   作者:難免有錯(cuò)_  
這篇文章主要介紹了C++刪除鏈表中間節(jié)點(diǎn)的方法,結(jié)合實(shí)例形式分析了鏈表刪除中間節(jié)點(diǎn)的具體思路與實(shí)現(xiàn)技巧,需要的朋友可以參考下

本文實(shí)例講述了C++刪除鏈表中間節(jié)點(diǎn)的方法。分享給大家供大家參考,具體如下:

題目:

給定鏈表頭結(jié)點(diǎn)head,實(shí)現(xiàn)刪除鏈表的中間節(jié)點(diǎn)函數(shù)。

解題思路及代碼:

快慢指針,快指針走兩步,慢指針一步。
當(dāng)快指針走到終點(diǎn)時(shí),慢指針正好是鏈表中間節(jié)點(diǎn),刪除此節(jié)點(diǎn)即可。

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

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

算法C++代碼:

Node* removeMidNode(pLinkedList head)
{
  if (head->next == NULL || head == NULL)
    return head;
  if (head->next->next == NULL)
    return head->next;
  pLinkedList fast = head;
  pLinkedList slow = head;
  pLinkedList pre = NULL;
  /*
  head  1    2    3    4    5
  pre   slow  fast
  */
  //1個(gè)節(jié)點(diǎn)
  if (head->next->next == NULL)
    return head->next;
  while (fast->next != NULL && fast->next->next != NULL)
  {
    pre = slow;
    fast = fast->next->next;
    slow = slow->next;
  }
  //此時(shí)fast已到終點(diǎn),slow為中間節(jié)點(diǎn),pre為中間節(jié)點(diǎn)前一個(gè)節(jié)點(diǎn)
  pre->next = slow->next;
  free(slow);
  slow = NULL;
  return head;
}

希望本文所述對(duì)大家C++程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • C語(yǔ)言練習(xí)題:自由落體的小球簡(jiǎn)單實(shí)例

    C語(yǔ)言練習(xí)題:自由落體的小球簡(jiǎn)單實(shí)例

    下面小編就為大家?guī)?lái)一篇C語(yǔ)言練習(xí)題:自由落體的小球簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧
    2016-05-05
  • C++using聲明和using編譯指令

    C++using聲明和using編譯指令

    這篇文章主要介紹了C++using聲明和using編譯指令,C++當(dāng)中提供了兩種機(jī)制來(lái)簡(jiǎn)化對(duì)名稱(chēng)空間中名稱(chēng)的使用。using聲明使特定的標(biāo)識(shí)符keys,using編譯指令使整個(gè)名稱(chēng)空間可用。下面我們就來(lái)看看這兩種機(jī)制的相關(guān)資料吧,需要的小伙伴可以參考一下
    2021-12-12
  • 位運(yùn)算實(shí)現(xiàn)十進(jìn)制轉(zhuǎn)換為二進(jìn)制

    位運(yùn)算實(shí)現(xiàn)十進(jìn)制轉(zhuǎn)換為二進(jìn)制

    這篇文章主要介紹了位運(yùn)算實(shí)現(xiàn)十進(jìn)制轉(zhuǎn)換為二進(jìn)制的相關(guān)資料,需要的朋友可以參考下
    2015-03-03
  • c++調(diào)用動(dòng)態(tài)庫(kù)LNK2019和LNK1120無(wú)法解析的外部命令

    c++調(diào)用動(dòng)態(tài)庫(kù)LNK2019和LNK1120無(wú)法解析的外部命令

    本文主要介紹了c++調(diào)用動(dòng)態(tài)庫(kù)LNK2019和LNK1120無(wú)法解析的外部命令, 出現(xiàn)這個(gè)錯(cuò)誤一般都是函數(shù)只找到聲明但沒(méi)有實(shí)現(xiàn),或者是少了什么鏈接庫(kù),下面就來(lái)解決一下
    2024-06-06
  • 用c++實(shí)現(xiàn)x的y次冪的代碼

    用c++實(shí)現(xiàn)x的y次冪的代碼

    以下實(shí)例是對(duì)使用c++實(shí)現(xiàn)x的y次冪的解決方法進(jìn)行了介紹。需要的朋友參考下
    2013-05-05
  • C和C++11之enum枚舉的具體使用方法

    C和C++11之enum枚舉的具體使用方法

    這篇文章主要介紹了C和C++11之enum枚舉的具體使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • OpenCV實(shí)現(xiàn)平均背景法

    OpenCV實(shí)現(xiàn)平均背景法

    這篇文章主要為大家詳細(xì)介紹了OpenCV實(shí)現(xiàn)平均背景法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • C語(yǔ)言實(shí)現(xiàn)隨機(jī)生成6位數(shù)密碼

    C語(yǔ)言實(shí)現(xiàn)隨機(jī)生成6位數(shù)密碼

    這篇文章主要為大家詳細(xì)介紹了如何使用C語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單而實(shí)用的隨機(jī)密碼生成器,該生成器將生成包含字母、數(shù)字和特殊字符的隨機(jī)密碼,有需要的小伙伴可以參考下
    2023-11-11
  • C/C++ 開(kāi)發(fā)神器CLion使用入門(mén)超詳細(xì)教程

    C/C++ 開(kāi)發(fā)神器CLion使用入門(mén)超詳細(xì)教程

    這篇文章主要介紹了C/C++ 開(kāi)發(fā)神器CLion使用入門(mén)超詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • C/C++利用棧和隊(duì)列實(shí)現(xiàn)停車(chē)場(chǎng)管理系統(tǒng)

    C/C++利用棧和隊(duì)列實(shí)現(xiàn)停車(chē)場(chǎng)管理系統(tǒng)

    數(shù)據(jù)結(jié)構(gòu)的課程設(shè)計(jì)一般都不是很好理解,今天小編為大家總結(jié)了一下c和c++版本的常見(jiàn)棧和隊(duì)列的的停車(chē)場(chǎng)管理程序,需要的小伙伴可以參考一下
    2022-06-06

最新評(píng)論