int* spiralOrder(int** matrix, int matrixSize, int* matrixColSize, int* returnSize)
{
int* arr=(int*)malloc(sizeof(int)*matrixSize*matrixColSize[0]);
int i=0,j=0;
int s=0;
int loop=0;
while(s<matrixSize*matrixColSize[0]);
{
//向右走
while(j<matrixColSize[0]-loop&&s<matrixSize*matrixColSize[0])
{
arr[s++]=matrix[i][j];
j++;
}
j--;
i++;
//向下走
while(i<matrixSize-loop&&s<matrixSize*matrixColSize[0])
{
arr[s++]=matrix[i][j];
i++;
}
i--;
j--;
//向左走
while(j>=0+loop&&s<matrixSize*matrixColSize[0])
{
arr[s++]=matrix[i][j];
j--;
}
i--;
j++;
//向上走
while(i>0+loop&&s<matrixSize*matrixColSize[0])
{
arr[s++]=matrix[i][j];
i--;
}
i++;
j++;
loop++;
}
*returnSize=matrixSize*matrixColSize[0];
return arr;
}
给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。
总显示超时,我检查逻辑也没问题