没想到真的能写出来,因为这是第一次用类的方式封装描述。真的是第一次写类。而且加上二叉树这个比较难描述的东东,确实费了不少劲。发现面向对象确实是很好的。真的是让用户无需关心数据细节。当然可能是还没习惯,写得有点慢。
期间,递归的不熟练导致犯下了几次严重错误,好在自己都纠正了。
但是还有以下没有解决:
1、如何在类中调用函数指针?
2、Parent函数能不能用递归描述?
...
若有高手看到指点一二,不胜感激~
BiTree.h:定义了二叉类 BiTree以及基本操作
#in[......]
《数据结构》第六章 二叉树的顺序存储
BiTree.h:顺序存储二叉树及其基本操作
enum {MAX_TREE=100,OK=0,WRONG=-1};
typedef int BTree[MAX_TREE];
typedef int Status;
struct position
{
int level,order;
};
void InitBiTree(BTree &T)
{
memset(T,0,sizeof(int)*MAX_TREE);
}
Status CreateBiTr[......]
矩阵转置的C++描述 with 稀疏矩阵行逻辑
Status TransposeMatrix(Matrix M,Matrix &T)
{
T.nu=M.mu;
T.mu=M.nu;
int *num,i,tmp;
num=new int[T.mu+1];
memset(num,0,sizeof(int)*(T.mu+1));
if(num==NULL)
return WRONG;
for(i=1;i<=M[......]
《数据结构》读书笔记 第五章 行逻辑稀疏矩阵
写得好费劲啊。找了半天错,最后发现是rpos初始化出错了。
Matrix.h:行逻辑稀疏矩阵的基本操作
enum Statuses{WRONG=-1,OK=0};
enum Max{MAX_SIZE=100,MAX_RC=20};
typedef int Status;
typedef int Elem;
typedef struct
{
int i,j;
Elem e;
}Triple;
typedef struct
{
int mu,n[......]
《数据结构》读书笔记 第五章 矩阵的顺序三元表存储
开始恢复写程序了,快正常了~这次的程序很难的,而且系列性啊……最让我惊诧的是看到了别人的减法算法,太牛了……
Matrix.h:定义了基本操作
#include <iostream>
using namespace std;
enum {OK=-1,WRONG=0,MAX=100};
typedef int Status;
typedef int Elem;
struct Triple
{
int i,j;[......]