單鏈表基礎面試題(下篇)

2021-09-09 05:36:22 字數 2354 閱讀 3826

//刪除鍊錶中重複的結點

//判斷乙個鍊錶是否為回文鍊錶

//判斷是否有環

//複製帶隨機指標的鍊錶

cur = head;

while

(cur)

else

cur = copy->next;

} rlnode* newhead,

*tail;

newhead = tail =

(rlnode*

)malloc

(sizeof

(rlnode));

cur = head;

while

(cur)

rlnode* nhead = newhead->next;

free

(newhead)

;return nhead;

}以上題目只是博主整理了單鏈表面試題,各題的詳細講解在之前部落格有詳細解答

單鏈表基礎面試題(上篇):

鏈表面試題(下)

鍊錶帶環問題 是環,返回相遇點 slistnode slistiscycle slistnode list return null 求環長度 int slistcyclelen slistnode meetnode return count 返回環的入口點 slistnode slistentryn...

鏈表面試題(下)

鍊錶帶環問題 是環,返回相遇點 slistnode slistiscycle slistnode list return null 求環長度 int slistcyclelen slistnode meetnode return count 返回環的入口點 slistnode slistentryn...

面試題 單鏈表反轉

問題 定義乙個函式,輸入乙個鍊錶的頭結點,反轉該鍊錶並輸出反轉後鍊錶的頭結點。一 非遞迴演算法 假設有鍊錶a b c d e f g。在反轉鍊錶過程中的某一階段,其鍊錶指標指向為 a b c d e f g。也就是說在結點d之前的所有結點都已經反轉,而結點d後面的結點e開始的所有結點都沒有反轉。這樣...