快考试了,作为数据结构的复习,那么就把代码背打一遍好了,虽然代码很简单,但是把基础打牢固对以后的学习肯定是百益而无一害。
正好也练练C++模板和指针以及代码书写的模块化,否则天天写些算法程序,一写就一大坨,乱乱的,养成习惯就悲剧了... ...
看一点写一点,考试前补充完这篇博文就OK了
本来想写到一片文章中的,代码折叠显示,不过折叠后手机里就看不到了...还是分开写吧
《基于数组的链表》AList
#include
<
iostream
>
using
namespace
std;
template
<
class
Elem
>
class
AList{
private
:
int
maxSize;
//
链表所能存储的最大元素数量
int
listSize;
//
当前实际的元素数量
int
fence;
//
当前操作位置,俗称“栅栏”
Elem
*
listArray;
//
存放链表元素的数组
public
:
//
构造函数
AList(
int
size
=
0
){
maxSize
=
size;
listSize
=
fence
=
0
;
listArray
=
new
Elem[maxSize];
}
/*
找不到那个弯弯的符号,注掉先
//析构函数
ALsit(){
delete [] listArray;
}
*/
//
清除函数clear()
void
clear(){
delete []listArray;
listSize
=
fence
=
0
;
listArray
=
new
Elem[maxSize];
}
//
一系列的“栅栏”操作
void
setStart(){ fence
=
0