免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
程序員面試攻略 3.9 面試?yán)}:空鏈表與循環(huán)鏈表

3.9面試?yán)}:空鏈表與循環(huán)鏈表
給定一個鏈表,它可能是以NULL結(jié)尾的非循環(huán)鏈表,如圖3-5所示;也可能是一個循環(huán)結(jié)構(gòu)結(jié)尾的循環(huán)鏈表。已知這個鏈表的頭指針,請編寫一個函數(shù)來判斷該鏈表是一個循環(huán)鏈表還是一個非循環(huán)鏈表,該函數(shù)不得對鏈表本身做任何修改。
算法:

讓快慢兩個指針從鏈表的頭元素出發(fā)開始遍歷
無限循環(huán)
 如果快指針遇到了“NULL”指針
  返回,該鏈表以“NULL”結(jié)束,是一個非循環(huán)鏈表
 如果快指針追上或者超過了慢指針
  返回,該鏈表是一個循環(huán)鏈表
 讓慢指針前進(jìn)一個結(jié)點
 讓快指針前進(jìn)兩個結(jié)點

int determineTermination(node *head) {
 node *fast, *slow;
 fast = slow = head;
 for (;;) {
  if (fast != null || fast->next != null)
   return 0;
  else if (fast == slow || fast->next == slow)
   return 1;
  else {
   slow = slow->next;
   fast = fast->next->next;
  }
 }
}

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
[算法][LeetCode]Linked List Cycle & Linked List Cycle II
判斷單鏈表是否存在環(huán)以及是否相交。
C++丨刪除鏈表中間節(jié)點的方法詳解
算法18(判斷單鏈表是否存在環(huán),判斷兩個鏈表是否相交問題詳解 )
判斷單鏈表是否存在環(huán),判斷兩個鏈表是否相交問題詳解 - 程序描繪人生 - C++博客
雙指針技巧匯總
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服