3.2.1.1 数据结构是递归的(单链表尾结点)

#include<iostream>
using namespace std;

class LNode {
public:
    int data;
    LNode* next;
};
class LinkList {
public:
    LNode* first;
    LinkList() {
        first = new LNode();
        first->data = 666;
        first->next = nullptr;
    }
    void creat(int arr[], int n) {
        LNode* s, * p;
        p = first;
        for (int i = 0; i < n; i++) {
            s = new LNode();
            s->data = arr[i];
            s->next = p->next;
            p->next = s;
            p = s;
        }
    }
    
};
//数据结构是递归的
LNode* getLast(LNode* p) {
    if (p->next == nullptr) {
        return p;
    }
    else {
        return getLast(p->next);
    }
}

int main() {
    LinkList L;
    int a[] = { 1,2,3,4,5,6,7,8,9 };
    L.creat(a, 9);
    LNode* res;
    res = getLast(L.first);
    cout << res->data << endl;
    return  0;
}

 

posted @ 2020-03-27 10:20  落地就是一把98K  阅读(189)  评论(0)    收藏  举报