itgle.com

若对n阶对称矩阵A,下标从1开始,以行序为主序方式将其下三角形的元素依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定a[i][j](1≤i,j≤n,且i≤j)的位置k的计算公式为()。A.i(i-1)/2+jB.j(j-1)/2+iC.i(i+1)/2+jD.j(j+1)/2+i

题目

若对n阶对称矩阵A,下标从1开始,以行序为主序方式将其下三角形的元素依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定a[i][j](1≤i,j≤n,且i≤j)的位置k的计算公式为()。

A.i(i-1)/2+j

B.j(j-1)/2+i

C.i(i+1)/2+j

D.j(j+1)/2+i


相似考题
更多“若对n阶对称矩阵A,下标从1开始,以行序为主序方式将其下三角形的元素依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定a[i][j](1≤i,j≤n,且i≤j)的位置k的计算公式为()。”相关问题
  • 第1题:

    设矩阵A是一个n×n对称矩阵,即A[i,j]=A[j,i],为了节省存储空间,将其下三角部分按行序为主序存放在一维数D[1…n(n+1)/2]中,对任一下三角元素Aij(i≥j),在一维数组B的下标位置k的值是______。

    A.(i+(i-1)/2+j-1)

    B.i(i-1)/2+j-1

    C.i(i+1)/2+j-1

    D.i(i+1)/2+j


    正确答案:B

  • 第2题:

    设n行n列的下三角矩阵A已压缩到一维数组B[1...n(n+1)/2]中,若按行为主序存储,则A[i,j]对应的B中存储位置为(48)。

    A.i(i-1)/2+j

    B.j(j-1)/2+i

    C.i(i+D)/2+j

    D.j(j+1)/2+i


    正确答案:A
    解析:按行主序则第1行有1个元素,第2行有2个元素,...第i-1行有i-1个元素,第i行有i个元素,对应数组B[1...n(n+1)/2]的位置即为这些元素的个数i(i-1)/2+j。

  • 第3题:

    设矩阵A是一个n×n对称矩阵.即A[i,j]=A[i,j],为了节省存储空间,将其下三角部分按行序为主序存放在一维数B[1...n(n+1)/2]中,对任一下三角元素aij(i≥j),在一维数组B的下标位置k的值是______。

    A.(i+(i-1))/2+j-1

    B.i(i-1)/2+j

    C.i(i+1)/2+j-1

    D.i(i+1)/2+j


    正确答案:B
    解析:aij元素处在第i行第j列位置。上i-1行的元素个数为(1+i-1)(i-1)/2=i(i-1)/2。再加上在i行的j个元素,总共是i(i-1)/2+j。

  • 第4题:

    下面程序的功能是 : 将 N 行 N 列二维数组中每一行的元素进行排序 , 第 0 行从小到大排序 , 第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如:

    define N 4

    void sort(int a[][N])

    { int i, j, k, t;

    for (i=0; i<N;i++)

    for (j=0; j<N-1:j++)

    for (k= 【 13 】 ; k<N;K++)

    /* 判断行下标是否为偶数来确定按升序或降序来排序 */

    if ( 【 14 】 ? a[i][j]<a[i][k]); a[i][j]>a[i][k])

    { t = a[i][j];

    a[i][j]=a[i][k];

    a[i][k] = t;

    }

    }

    void outarr(int a[N][N])

    { …… }

    main()

    { int aa[N][N]={{2,3,4,1},{8,6,5,7},{11,12,10,9},{15,14,16,13}};

    outarr(aa); /* 以矩阵的形式输出二维数组 */

    sort(aa);

    outarr(aa);

    }


    正确答案:
    答案j+1;i%2或i%2==1解析:k表示i行中从第j个元素之后的元素的列小标;判断第i行是否是偶数

  • 第5题:

    设数组a[0..n-1,0..m-1](n>1,m>1)中的元素以行为主序存放,每个元素占用4个存储单元,则数组元素a[i,j](0≤i
    A. (j*m+i)*4
    B.(i*m+j)*4
    C.(j*n+i)*4
    D.(i*n+j)*4

    答案:B
    解析:
    本题考查数据结构基础知识。
    数组a的元素可示意如下。

    对于元素按行排列时,其之前有i行且每行有m个元素(行下标为0,1,…,i-1),即i*m个,行下标为i时,排列在a[i,j]切之前的元素有a[i,0],a[i,1],…,a[i,j-1],即j个,所以一共有i*m+j个元素排在a[i,j]之前,因此该元素的存储位置相对于数组空间首地址的偏移量为(i*m+j)*4。

  • 第6题:

    若对n阶对称矩阵A[1...n, 1...n]以行序为主序方式将其下三角的元素(包括主对角线上的所有元素)依次存放于-维数组B[1...fl (n+1)/2]中,则在B中确定ass (i

    A.i×(1-1)/2+j
    B.j×(j-1)/2+i
    C.i×(1+1)/2+j
    D.j×(j+1)/2+i

    答案:B
    解析:

  • 第7题:

    设数组a[1..n,1..m](n>1,m>1)中的元素以行为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤n,i≤j≤m)相对于数组空间首地址的偏移量为( )。

    A.(i-1)*m+j-1
    B.(i-1)*n+j-1
    C.(j-1)*m+i-1
    D.(j-1)*n+i-1

    答案:A
    解析:
    数组 a[1..n,1..m] (n>1, m>1)如图所示:数组元素的存储地址=数组空间首地址+偏移量其中偏移量的计算方式为排列在所访问元素之前的元素个数乘以每个元素占用的存储单元数。对于元素a[i,j],在按行存储(以行为主序存放)方式下,该元素之前的元素个数为(i-1)*m+j-1。

  • 第8题:

    设矩阵A是一个对称矩阵,为了节省存储,将其下三角部分按行序存放在一维数组B[1,n(n-1)/2]中,对下三角部分中任一元素ai,j(i>=j),在一维数组B的下标位置k的值是()。

    • A、i(i-1)/2+j-1
    • B、i(i-1)/2+j
    • C、i(i+1)/2+j-1
    • D、i(i+1)/2+j

    正确答案:B

  • 第9题:

    设二维数组A[1.. m,1.. n](即m行n列)按行存储在数组B[1.. m*n]中,则二维数组元素A[i,j]在一维数组B中的下标为()。

    • A、(i-1)*n+j
    • B、(i-1)*n+j-1
    • C、i*(j-1)
    • D、j*m+i-1

    正确答案:A

  • 第10题:

    设n行n列的下三角矩阵A已压缩到一维数组S[1....n*(n+1)/2]中,若按行序为主存储,则A[i][j]对应的S中的存储位置是()。


    正确答案:i*(i+1)/2+j+1

  • 第11题:

    单选题
    设二维数组A[1.. m,1.. n](即m行n列)按行存储在数组B[1.. m*n]中,则二维数组元素A[i,j]在一维数组B中的下标为()。
    A

    (i-1)*n+j

    B

    (i-1)*n+j-1

    C

    i*(j-1)

    D

    j*m+i-1


    正确答案: D
    解析: 特殊值法。取i=j=1,易知A[1,1]的的下标为1,四个选项中仅有A选项能确定的值为1,故选A。

  • 第12题:

    单选题
    若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定aij(i<j)的位置k的关系为()。
    A

    i*(i-1)/2+j

    B

    j*(j-1)/2+i

    C

    i*(i+1)/2+j

    D

    j*(j+1)/2+i


    正确答案: C
    解析: 暂无解析

  • 第13题:

    ● 采用一维数组 S 存储一个 n 阶对称矩阵 A 的下三角部分(按行存放,包括主对角线) ,设元素A[i][j]存放在 S[k] 中(i、j、k 均从1 开始取值) ,且 S[1]=A[1][1],则k与 i、j 的对应关系是 (43) 。例如,元素 A[3][2]存在 S[5]中。


    正确答案:D

  • 第14题:

    设矩阵A是一个n*n对称矩阵.即A[i,j]=A[i,j],为了节省存储空间,将其下三角部分按行序为主序存放在一维数B[1...n(n+1)/2)中,对任一下三角元素aij(i>=j),在一维数组 B的下标位置k的值是( )。

    A.(i+(i-1))/2+j-1

    B.i(i-1)/2+j

    C.i(i+1)/2+-1

    D.i(i+1)/2+j


    正确答案:B
    解析:aij元素处在第i行第j列位置。上i-1行的元素个数为(1+i-1)(i-1)/2= j(i-1)/2。再加上在i行的i个元素,总共是i(i-1)/2+j

  • 第15题:

    一个n阶对称矩阵A采用一维数组S以行为主序存放其下三角各元素,设元素 A[i][j]存放在S[k]中,且S[1]=A[1][1],则k与i、j的对应关系是(16)。

    A.

    B.

    C.

    D.


    正确答案:D

  • 第16题:

    设数组a[1..n,1..m](n>1,m>1)中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤n,1≤j≤m)相对于数组空间首地址的偏移量为( )。

    A.(i-1)*m+j-1
    B.(i-1)*n+j-1
    C.(j-1)*m+i-1
    D.(j-1)*n+i-1

    答案:D
    解析:
    本题考查程序语言基础知识。
    存储数组元素时,需要将元素按照某种顺序排列。对于二维及多维数组,则有按行存储和按列存储两种方式,其不同在于同一个元素相对于数组空间起始位置的偏移量不同。本问题中n行m列的二维数组a[1..n,1..m]是按列存储,则对于元素a[i,j]来说,它之前有完整的j-1列、每列n个元素,在第j列上排在a[i,j]之前的元素个数是i-1个,因此排列在a[i,j]之前的元素个数为(j-1)*n+i-1,由于每个元素占一个单元,该表达式的值就是偏移量。

  • 第17题:

    设有 n 阶三对角矩阵 A,即非零元素都位于主对角线以及与主对角线平行且紧邻的两条对角线上,现对该矩阵进行按行压缩存储,若其压储空间用数组 B 表示,A 的元素下标从 0开始,B 的元素下标从 1 开始。已知 A[0,0]存储在 B[1],A[n-1,n-1]存储在 B[3n-2],那么非零元素 A[i,j](0≤ i<n,0≤ j<n,│i-j│≤1)存储在 B( )

    A.2i+j-1
    B.2i+j
    C.2i+j+1
    D.3i-j+1

    答案:C
    解析:

  • 第18题:

    A[N,N]是对称矩阵,将下三角(包括对角线)以行序存储到一维数组T[N(N+l)/2]q中,则对任一上三角元素A[i][j]对应T[k]的下标k是()。

    A.i(1-1)/2+j
    B.j(j-1)/2+i
    C.i(j-i)/2+1
    D.j(1-1)/2+1

    答案:B
    解析:
    将对称矩阵A[N,N]下三角以行序存储到一维数组T[N(N+1)/2]中。对应的A[i][j]啪与T[k]的下标k的关系为k=i(i-1)/2+j;但题目中是求任一上三角元素A[i][j]对应T[k]的下标k,在对称矩阵中A[i][D]=A[i][i],即上三角中的元素的A[i][j]存储位置对应下三角A[i][j]的存储位置,所以k=j(j-1)/2+i。

  • 第19题:

    设数组a[1..n,1..m](n>l,m>l)中的元素以行为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤n,i≤j≤m)相对于数组空间首地址的偏移量为(14)。

    A.(i-1)*m+j-1
    B.(i-1)*n+j-1
    C.(j-1)*m+i-1
    D.(j-1)*n+i-1

    答案:A
    解析:
    数组元素的存储地址=数组空间首地址+偏移量
    其中偏移量的计算方式为排列在所访问元素之前的元素个数乘以每个元素占用的存储单元数。
    对于元素a[i,j],在按行存储(以行为主序存放)方式下,该元素之前的元素个数为(i-1)*m+j-1。

  • 第20题:

    A[N,N]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组T[N(N+1)/2]中,则对任一上三角元素a[i][j]对应T[k]的下标k是()。

    • A、i(i+1)/2+j
    • B、j(j+1)/2+i
    • C、i(j-i)/2+1
    • D、j(i-1)/2+1

    正确答案:B

  • 第21题:

    设有n阶对称矩阵A,用数组s进行压缩存储,当i≥j时,A的数组元素aij相应于数组s的数组元素的下标为()。(数组元素的下标从1开始)


    正确答案:i(i-1)/2+j

  • 第22题:

    若对n阶对称矩阵A以行序为主序方式将其下三角形的元素(包括主对角线上所有元素)依次存放于一维数组B[1..(n(n+1))/2]中,则在B中确定aij(i<j)的位置k的关系为()。

    • A、i*(i-1)/2+j
    • B、j*(j-1)/2+i
    • C、i*(i+1)/2+j
    • D、j*(j+1)/2+i

    正确答案:B

  • 第23题:

    单选题
    A[N,N]是对称矩阵,将下面三角(包括对角线)以行序存储到一维数组T[N(N+1)/2]中,则对任一上三角元素a[i][j]对应T[k]的下标k是()。
    A

    i(i+1)/2+j

    B

    j(j+1)/2+i

    C

    i(j-i)/2+1

    D

    j(i-1)/2+1


    正确答案: D
    解析: 暂无解析

  • 第24题:

    单选题
    设矩阵A是一个对称矩阵,为了节省存储,将其下三角部分按行序存放在一维数组B[1,n(n-1)/2]中,对下三角部分中任一元素ai,j(i>=j),在一维数组B的下标位置k的值是()。
    A

    i(i-1)/2+j-1

    B

    i(i-1)/2+j

    C

    i(i+1)/2+j-1

    D

    i(i+1)/2+j


    正确答案: D
    解析: 暂无解析