- 相關推薦
筆試題(單向鏈表)
單向鏈表的反轉是一個經常被問到的一個面試題,也是一個非常基礎的問題,
筆試題(單向鏈表)
。比如一個鏈表是這樣的:1->2->3->4->5
通過反轉后成為5->4->3->2->1。
最容易想到的方法遍歷一遍鏈表,利用一個輔助指針,存儲遍歷過程中當前指針指向的下一個元素,然
后將當前節點元素的指針反轉后,利用已經存儲的指針往后面繼續遍歷。源代碼如下:
struct linka {
int data;
linka* next;
};
void reverse(linka*& head) {
if(head ==NULL)
return;
linka *pre, *cur, *ne;
pre=head;
cur=head->next;
while(cur)
{
ne = cur->next;
cur->next = pre;
pre = cur;
cur = ne;
}
head->next = NULL;
head = pre;
}
【筆試題單向鏈表】相關文章:
鏈表面試題-一個鏈表的結點結構08-09
C++筆試題:關于鏈表和指針09-16
360筆試題目06-27
筆美國國家儀器試題目09-23
搜狐產品筆歸分享筆試題目07-05
筆試實例:判斷單鏈表中是否存在環08-03
寫出程序把一個鏈表中的接點順序倒排10-13
新浪筆經04-27
新聞總署筆經10-13
IBM公司筆經09-15