二叉树的建立
class BTree
{
public:
// 树结点初始化
void creatTree(TreeNode*& root,int i)
{
static int A[] = {9,8,7,6,5,4,3,2,1,0};
const static int len = sizeof(A)/sizeof(int);
root = new TreeNode(A[i]);
if(i >= len)
{
root = NULL;
return;
}
creatTree(root->left,2*i+1);
creatTree(root->right,2*i+2);
}
// 先序打印结点(dfs)
void printTree(TreeNode* root)
{
// 先根顺序
if(!root)
return;
cout<<root->val<<" ";
printTree(root->left);
printTree(root->right);
}
};
二维数组的创建
int col = 4, row = 5;
int **a = new int*[col];
for (int i = 0; i < col;++i)
{
a[i] = new int[row];
for (int j = 0; j < row; ++j )
a[i][j] = i + j*2;
}
for(int i = 0; i< col;++i)
{
for(int j = 0; j < row; ++j)
cout<<a[i][j]<<" ";
cout<<endl;
}
cout<<endl;