B.插入排序:思路:当前a[1]..a[i-1]已排好序了,现要插入a[i]使a[1]..a[i]有序。procedure insert_sort;var i,j:integer;
B.插入排序:
思路:当前a[1]..a[i-1]已排好序了,现要插入a[i]使a[1]..a[i]有序。
procedure insert_sort;
var i,j:integer;
相关考题:
若有以下程序段:inta[]={4,0,2,3,1},i,j,t;for(i=1;i5;i++){t=a[i];j=i-1;while(j=0j--;}a[j+1]=t;}......则该程序段的功能是()。 A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)
以下程序的输出结果是( )。 Option Base 1 Private Sub Command1_Click() Dim a(10),p(3) as Integer k=5 For I-1 to 10 a(i)=I Next I For j=1 to3 p(i)=a(I*j) Next j For I=l to 3 k=k+ p (I)*2 Next I Print k End SubA.33B.28C.35D.37
设矩阵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-1C.i(i+1)/2+j-1D.i(i+1)/2+j
Private Sub Commandl Click()Dim i As Integer, j As IntegerDim a (10,10)As IntegerFor i=1 To 3For j= i To 3a(i,j)=(i-1)*3+jPrint a (i,j);Next jPrintNext iEnd Sub程序运行后,单击命令按钮,窗体上显示的是( )。
F. 归并排序{a为序列表,tmp为辅助数组}procedure merge(var a:listtype; p,q,r:integer);{将已排序好的子序列a[p..q]与a[q+1..r]合并为有序的tmp[p..r]}var I,j,t:integer;tmp:listtype;
高精度数的定义:typehp=array[1..maxlen] of integer;1.高精度加法procedure plus ( a,b:hp; var c:hp);var i,len:integer;
链表的定位函数loc(I:integer):pointer; {寻找链表中的第I个结点的指针}procedure loc(L:linklist; I:integer):pointer;var p:pointer;j:integer;
设矩阵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-1B.i(i-1)/2+jC.i(i+1)/2+-1D.i(i+1)/2+j
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。A.9B.10C.12D.13
设矩阵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-1B.i(i-1)/2+jC.i(i+1)/2+j-1D.i(i+1)/2+j
二维数组A[m,n]按行序为主序存放在内存,每个数组元素占1个存储单元,则元素aij的地址计算公式是( )。A.LOC(aij)=LOC(a00)+[(i-1)*m+(j-1)]B.LOC(aij)=LOC(a00)+[(j-1)*m+(i-1)]C.LOC(aij)=LOC(a00)+[(i-1)*n+(j-1)]D.LOC(aij)=LOC(a00)+[(j-1)*n+(i-1)]
下面程序段的功能是()。……int a[]={4,0,2,3,1},i,j,t;for(i=0;=0 下面程序段的功能是( )。 …… int a[]={4,0,2,3,1},i,j,t; for(i=0;<5;i++) { t=a[i];j=i;j--; while(j>=0t>a[j]) {a[j+1]=a[j];j--;} a[j+1] =t; } ……A.对数组a进行插入排序(升序)B.对数组a进行插入排序(降序)C.对数组a进行选择排序(升序)D.对数组a进行选择排序(降序)
设数组a[1..n,1..m](n>1,m>1)中的元素以列为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤n,1≤j≤m)相对于数组空间首地址的偏移量为( )。A.(i-1)*m+j-1B.(i-1)*n+j-1C.(j-1)*m+i-1D.(j-1)*n+i-1
设数组a[1..n,1..m](n>1,m>1)中的元素以行为主序存放,每个元素占用1个存储单元,则数组元素a[i,j](1≤i≤n,i≤j≤m)相对于数组空间首地址的偏移量为( )。A.(i-1)*m+j-1B.(i-1)*n+j-1C.(j-1)*m+i-1D.(j-1)*n+i-1
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行(请作答此空)次整数之间的比较。对于该排序算法,输入数据具有( )特点时,对整数进行从小到大排序,所需的比较次数最多。A.9B.10C.12D.13
设数组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-1B.(i-1)*n+j-1C.(j-1)*m+i-1D.(j-1)*n+i-1
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数已经排好序,将第i个整数依次和第i-1,i-2,…个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行( )次整数之间的比较。对于该排序算法,输入数据具有(请作答此空)特点时,对整数进行从小到大排序,所需的比较次数最多。A.从小到大B.从大到小C.所有元素相同D.随机分布
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1,i-2,...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5,2,4,6,1,3}进行从小到大排序,则需要进行( )次整数之间的比较。A.9B.10C.12D.13
完成下列折半插入排序算法。 Void binasort(struct node r[MAXSIZE],int n) {for(i=2;i=n;i++){ r[0]=r[i];low=1;high=i-1; while(low=high){ mid=(low+high)/2; if(r[0].key else low=mid+1 ; } for(j=i-1;j=low;j- -)r[j+1]=r[j] ; r[low]=() ; } }
执行下面的程序,窗体上第二行显示的内容是()。 Dim a(3,3)As Integer,i As Integer,j As Integer For i=1 To 3 For j=1 To 3 a(i,j)=(i-1)*2+j Print a(i,j); Nextj Print Next iA、123B、567C、345D、456
填空题完成下列折半插入排序算法。 Void binasort(struct node r[MAXSIZE],int n) {for(i=2;i else low=mid+1 ; } for(j=i-1;j=low;j- -)r[j+1]=r[j] ; r[low]=() ; } }