广义表是非线性结构,其定义是递归的。以下给出几种简单的广义表模型:由上图我们可以看到,广义表的节点类型无非head、value、sub三种,这里设置枚举类型,利用枚举变量来记录每个节点的类型:enum Type { HEAD, //头节点 VALUE, //值节点 SUB, &nb
迷宫地形我们可以通过读文件的形式,通过已知入口逐个遍历坐标寻找通路。文件如图:每个坐标的位置用结构体来记录:struct Pos //位置坐标 { int _row; int _col; };定义行列范围#define M&nbs
没有经过处理的稀疏矩阵其实就是一个特殊的二维数组,数组中的大部分元素是0或者其他类型的非法值,只有少数几个非零元素。 为了实现压缩存储,可以只存储稀疏矩阵的非0元素。在存储稀疏矩阵中的非0元素时,必须要存储该元素的行列号以及元素值。我们可以封装一个三元组类来存储这些元素。//三元组 template<class T> struct Tripl
设一个N*N的方阵A,A中任意元素A[i][j],当且仅当A[i][j] == A[j][i](0 <= i <= N-1 && 0 <= j <= N-1),则矩阵A是对称矩阵。以矩阵的对角线为分隔,分为上三角和下三角。如上图,对称矩阵压缩存储存储时只需要存储上三角/下三角的数据,一般情况下用下三角存储所以最多存储n(n+1)/2个数据。对称矩
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号