实现阶梯式数组
作者:互联网
代码直接奉上
JAVA:
int [][]arr = new int[10][];\\定义一个二维数组(其外围数组长度为10)
for(int i = 0 ; i<arr.length ; i++)
{
arr[i]=new int [i+1];//实现阶梯式数组(第1行有1个元素,第2行有2个元素)
}
C语言:
#define N = 10
int arr[N][N]={1};
for(int i = 0 ; i<N ; i++)
{
for(int j = 0 ; j<=i ; j++) // j < i 的目的是为了让列数 j 与行数 i 保持一致。(是实现阶梯式数组的关键)
{
arr[i][j] = 1; // 对数组进行赋值
printf("%d ",arr[i][j]);
}
输出结果为
1
1 1
1 1 1
···
*****************************************************
总结:
从这两种实现方法来看,JAVA 的方法更空间复杂度更小,C语言空间复杂度较大。
因为C语言开辟的数组空间为 N*N = 10 * 10 = 100 ,有冗余的空间,而JAVA能将空间充分利用!
标签:10,arr,JAVA,实现,阶梯式,C语言,int,数组 来源: https://blog.csdn.net/zcs18338992657/article/details/121249899