我目前已經寫出來了
但addNthRec(int n, int v)跟removeNthRec(int n)裡
剛開始那個計算 linked list 的長度還是有用到迴圈
有沒有辦法把那改成 recursive 的形式寫在同個function裡呢?
還是有什麼不需要用到迴圈的方法?
※ 引述《solinari (soli)》之銘言:
: 開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
: Linux
: 問題(Question):
: 我想把 void addNth(int n, int v) 和 int removeNth(int n) 這兩個函式
: 寫成 recursive 的形式在:
: void addNthRec(int n, int v);
: int removeNthRec(int n);
: 使用 private 的 helper function:
: void addNthRec(Node *, int n, int v);
: int removeNthRec(Node *, int n);
: 這兩個函式的功能是根據給定的index, 增加或刪除linkedlist的node.
: 我已經寫好使用迴圈的版本, 可是不曉得該如何改成遞迴的版本
: 我才學一陣子而已, 有板友能幫忙解釋該如何改嗎?
: 我覺得遞迴有點難懂...
: 先謝謝大家
: 程式碼(Code):(請善用置底文網頁, 記得排版)
: Node.h http://codepad.org/fWDz98gm
: LinkedList.h http://codepad.org/HiWl4oKx
: LinkedList.cpp http://codepad.org/GeKYvypv