数据结构虽然经常在用,但是时间久了,很多东西都比较零散,最近有空就重新梳理一遍数据结构相关的知识,顺便用C++挨个实现一下,一则强化自己的记忆,二则为初学者一些编程指引。虽然基本的数据结构在C++的STL(标准模版库)中大多都有实现,但是自己实现一遍的效果远大于拿现成的来用。
打算把基本的数据结构逐个实现一遍,使用C++模版编程,代码中有不当之处,还请各位大牛不吝赐教,我会积极学习并改正。大家一起来见证!
直接上源码:
#ifndef MYSTACK_H_
#define MYSTACK_H_
/*******************************************************************
文件名:MyStack.h
作 者:吾理小子
版 本:v1.0
日 期:2020-03-15
功 能:使用C++模版类实现栈的基本功能
********************************************************************/
#include<iostream>
#include<string.h>
#define DEFAULT_SIZE 10 //堆栈默认大小
/*定义堆栈块,用结构体定义方便扩展使用*/
template <typename T>
struct StackBlock
{
T data;
};
template <class T>
class MyStack
{