本博客的代碼的思想和圖片參考:好大學慕課浙江大學陳越老師、何欽銘老師的《數據結構》
陳越姥姥,我向您說明的是,在您這個算法中,只能實現一個鏈表的從第一個元素到K個元素的反轉,但是不能實現每K個元素的反轉
Ptr Reverse( Ptr head, int K ) { cnt = 1; new = head->next; old = new->next; while ( cnt < K ) { tmp = old->next; old->next = new; new = old; old = tmp; cnt++; } head->next->next = old; return new; }
這是根據您的視頻我畫的演示的圖,當K=3時:
我的意思是:那個測驗題要求我們每K個元素進行反轉,
也就是 當K=3時,鏈表的打印應該為結果為 3 2 1 6 5 4,鏈表的結構按照您的算法思路應該如下圖所示
但是您的算法卻沒有把這個題目要求實現。這就是我昨晚很迷惑的地方
但是我今天想了一下,您應該是只教了我們如何去把一個鏈表的前N個元素反轉,但是關於這道題目,還是由我們自己根據您提供的思路來寫題目要求的算法。
很抱歉,昨天晚上打擾到陳越姥姥了。
但是我想了一晚上,也沒想出來(大哭),陳越姥姥能不能給點思路呀。
也就是