91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

面試題快慢鏈表和快慢指針該怎樣答

發布時間:2021-09-16 10:09:11 來源:億速云 閱讀:167 作者:柒染 欄目:編程語言

本篇文章為大家展示了面試題快慢鏈表和快慢指針怎樣答,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

如何快速找到位置長度單鏈表的中間節點?普通方法,就是先遍歷,在從頭找到2/length的中間節點。算法復雜度是:O(3*n/2)。而更快的方法就是利用快慢指針的原理。

快慢鏈表:利用標尺的思想,設置兩個指針(一快一慢)*serach和*mid,剛開始都指向單鏈表的頭結點。但是*search指針的移動速度是*mid的兩倍。當*search到尾結點的時候,mid剛好到了中間。算法復雜度是:O(n/2)

int GetMidNode(LinkList *L,int elem){
  LinkList *search,*mid;
  mid = search = L; //指向頭結點
  while (search->next != NULL){ //當存在下個結點的時候 
    if (search->next->next!=NULL) {//檢查下個的下個節點是否為空 
      search = search->next->next;
      mid = mid->next;
    } 
    else
      search = search->next;
  }
  elem = mid->data;
  return elem;
}

上述內容就是面試題快慢鏈表和快慢指針怎樣答,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

博乐市| 广西| 长丰县| 博爱县| 浙江省| 昆山市| 宜兰县| 安岳县| 集贤县| 云安县| 开原市| 若尔盖县| 淄博市| 宜君县| 巴东县| 聂荣县| 新巴尔虎左旗| 澄迈县| 武邑县| 永修县| 岳池县| 武功县| 永胜县| 咸阳市| 邵阳市| 建阳市| 桦川县| 汶上县| 莲花县| 辉南县| 荃湾区| 峨眉山市| 綦江县| 雷山县| 云梦县| 扎赉特旗| 昌平区| 津市市| 饶阳县| 荣昌县| 清河县|