浙大数据结构C++实现,写的一塌糊涂到处借鉴,,最后的逻辑也看不懂,有需要改正的地方请指出,不胜感激
#pragma once
#include<iostream>
using namespace std;
template<class T>
class Node {
public:
T data;
int left;
int right;
public:
Node() :data(0), left(-1), right(-1) {};
Node(T d, int l, int r) : data(d), left(l), right(r) {};
Node& operator=(Node& n) {
this->data = n.data;
this->left = n.left;
this->right = n.right;
return *this;
}
};
template<class T>
class Stalinktree {
public:
Stalinktree() : m_len(0), m_maxsize(10) {
this->m_arrptr = new Node<T>[this->m_maxsize];
}
int Bulidtree(Node<T>* nodearrptr);
int judge(Stalinktree<T> st1,Stalinktree<T> st2, int r1, int r2);
public:
int m_maxsize;
int m_len;
Node<T>* m_arrptr;
};
template<class T>
int Stalinktree<T>::Bulidtree(Node<T>* nodearrptr) {
int temp_len;
cin >> temp_len;
int*