我必须开发3D游戏。我开始实现三维结构。
示例
matrix = ( char *** ) malloc( sizeof( char ** ) * size_cube );
matrix_b = ( char *** ) malloc( sizeof( char ** ) * size_cube );
for ( i = 0 ; i < size_cube ; i++ ) {
matrix[ i ] = ( char ** ) malloc( sizeof( char * ) * size_cube );
matrix_b[ i ] = ( char ** ) malloc( sizeof( char * ) * size_cube );
for ( j = 0 ; j < size_cube ; j++ ) {
matrix[ i ][ j ] = ( char * ) malloc( sizeof( char ) );
matrix_b[ i ][ j ] = ( char * ) malloc( sizeof( char ) );
}
}
只有提议的是:
个人数量将为O(大小 2 ), 因此立方体将非常稀疏。你的实施应该是 旨在分配与此值成比例的空间量。如果 使用矩阵的密集数据结构(按照的顺序) O(大小 3 )),您的程序将无法处理 最大的问题实例。
如何使用二次算法访问3D数组? 有什么想法吗?