哎,,,颓废了,,好几天没写博客记录我的小生活了,不过这几天也弄了不少东西但是不能写博客,大概说说吧,,1.Ubuntu,就这个东西我安装了两次,两种方法一种是图形的,一种是文本模式的,顾名思义图形安装就和安装windows一样,简单能认识字差不多,文本模式就比较复杂了,全英文撞期来比较麻烦,2.复习,主要是复习数据结构了,把所有的存储结构还有涉及到的一些操作全都在纸上写了一遍,手快写烂了,,不说了言归正传。
这次写的是动态顺序栈的定义,没什么难点把base和top指针操控好了就没什么大问题了
1.定义ElenType,方便更改类型(本程序采用ElemType 为int类型)
/***
*ElemType.h - ElemType的定义
*
****/
#ifndef ELEMTYPE_H
#define ELEMTYPE_H
typedef int ElemType;
int compare(ElemType x, ElemType y);
void visit(ElemType e);
#endif /* ELEMTYPE_H */
2.定义动态顺序栈和基本操作
/***
*DynaSeqStack.h - 动态顺序栈的定义
*
****/
#if !defined(DYNASEQSTACK_H)
#define DYNASEQSTACK_H
#include "ElemType.h"
/*------------------------------------------------------------
// 栈结构的定义
------------------------------------------------------------*/
typedef struct Stack
{
ElemType *base; // 栈基址
ElemType *top; // 栈顶
int stacksize; // 栈存储空间的尺寸
} SqStack;
/*------------------------------------------------------------
// 栈的基本操作
------------------------------------------------------------*/
bool InitStack(SqStack *S);
void DestroyStack(SqStack *S);
bool StackEmpty(SqStack S);
int StackLength(SqStack S);
bool GetTop(SqStack S, ElemType *e);
void</