最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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++中變量進(jìn)行初始化的3種方法

    C++中變量進(jìn)行初始化的3種方法

    本文主要介紹了C++中變量進(jìn)行初始化的3種方法,包括用"=",構(gòu)造函數(shù)初始化以及統(tǒng)一初始化這三種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • 一篇文章帶你了解C++面向?qū)ο缶幊?-繼承

    一篇文章帶你了解C++面向?qū)ο缶幊?-繼承

    這篇文章主要介紹了解析C++面對(duì)象編程--繼承的運(yùn)用,是C++入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-08-08
  • C 語(yǔ)言插入排序算法及實(shí)例代碼

    C 語(yǔ)言插入排序算法及實(shí)例代碼

    本文主要介紹C語(yǔ)言插入排序,這里給大家詳細(xì)介紹插入排序的思想并舉例說明,還有實(shí)現(xiàn)代碼,有需要的朋友可以參考下
    2016-07-07
  • opencv2基于SURF特征提取實(shí)現(xiàn)兩張圖像拼接融合

    opencv2基于SURF特征提取實(shí)現(xiàn)兩張圖像拼接融合

    這篇文章主要為大家詳細(xì)介紹了opencv2基于SURF特征提取實(shí)現(xiàn)兩張圖像拼接融合,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Linux下C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲

    Linux下C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細(xì)介紹了Linux下C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • c++并查集優(yōu)化(基于size和rank)

    c++并查集優(yōu)化(基于size和rank)

    這篇文章主要介紹了c++并查集優(yōu)化(基于size和rank),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • 從頭學(xué)習(xí)C語(yǔ)言之if語(yǔ)句的使用

    從頭學(xué)習(xí)C語(yǔ)言之if語(yǔ)句的使用

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言之if語(yǔ)句的使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • C++中的struct和class的區(qū)別詳解

    C++中的struct和class的區(qū)別詳解

    這篇文章主要介紹了C++中的struct和class的區(qū)別詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-08-08
  • c++中nlohmann?json的基本使用教程

    c++中nlohmann?json的基本使用教程

    nlohmann/json 是一個(gè)C++實(shí)現(xiàn)的JSON解析器,使用非常方便直觀,下面這篇文章主要給大家介紹了關(guān)于c++中nlohmann?json基本使用的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • C語(yǔ)言字符串函數(shù)入門

    C語(yǔ)言字符串函數(shù)入門

    這篇文章主要為大家介紹了C語(yǔ)言字符串函數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評(píng)論

舒兰市| 廊坊市| 曲麻莱县| 汉沽区| 浪卡子县| 安岳县| 成武县| 武川县| 攀枝花市| 高安市| 剑川县| 赣州市| 鸡泽县| 盖州市| 乌拉特中旗| 措勤县| 钟祥市| 拉萨市| 太康县| 郁南县| 健康| 大庆市| 民权县| 乐昌市| 新干县| 敖汉旗| 巴青县| 石台县| 陆良县| 公主岭市| 南华县| 阆中市| 定南县| 太和县| 浮山县| 赫章县| 洪洞县| 古田县| 清远市| 永年县| 罗源县|