考虑一个复制并转置一个类型为Int的NxN矩阵的过程。也就是,对于源矩阵S和目的矩阵D,我们要将每个元素si+j复制到di+j。只用一个简单的循环就能实现这段代码:
void transpose(int *dst,int *src,int dim){ int i,j; for(i=0;i<dim;i++) for(j=0;j<dim;j++) dst[j*dim+i]=src[i*dim+j]; }这里,过程的参数是指向目的矩阵(dst)和源矩阵(src)的指针,以及矩阵的大小N(dim)。你的工作是设计一个运行得尽可能快的转置函数。