我們得到了用來形成鍊錶的整數值。任務是使用遞歸方法先插入然後遍歷單鍊錶。
如果head 為NULL → 將節點加入head
#輸入− 1 - 2 - 7 - 9 - 10
#輸出
輸出 strong>− 鍊錶:1 → 2 → 7 → 9 → 10 → NULL
輸入− 12 - 21 - 17 - 94 - 18
輸出− 鍊錶:12 → 21 → 17 → 94 → 18 → NULL
下面程式中所使用的方法如下#在這種方法中,我們將使用函數新增節點並遍歷單鍊錶並遞歸呼叫它們以進行下一個輸入。#include <bits/stdc++.h> using namespace std; struct SLLNode { int data; SLLNode* next; }; SLLNode* addtoEnd(SLLNode* head, int data){ if (head == NULL){ SLLNode *nodex = new SLLNode; nodex->data = data; nodex->next = NULL; return nodex; } else{ head->next = addtoEnd(head->next, data); } return head; } void traverseList(SLLNode* head){ if (head == NULL){ cout <<"NULL"; return; } cout << head->data << " -> "; traverseList(head->next); } int main(){ SLLNode* head1 = NULL; head1 = addtoEnd(head1, 1); head1 = addtoEnd(head1, 8); head1 = addtoEnd(head1, 56); head1 = addtoEnd(head1, 12); head1 = addtoEnd(head1, 34); cout<<"Linked List is :"<<endl; traverseList(head1); return 0; }
Linked List is : 1 -> 8 -> 56 -> 12 -> 34 -> NULL
以上是在C++中遞歸插入和遍歷鍊錶的詳細內容。更多資訊請關注PHP中文網其他相關文章!