插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置,InsertSort 类的成员函数sort()实现了插入排序算法,请将画线处缺失的部分补充完整。
class InsertSort{
public:
InsertSort(int*a0,int n0):a(a0),n(n0){}//参数组首地址,n 是数组元素个数
void sort()
{//此函数假设已排离序列初始化状态只包含a[0],未排序序列初始为a[1]?a[n-1]
for (int i=1;iint j;
for( [14] j>0;--j){
if(t>a[j-1])break;
a[j]=a[j-1];}
a[j]=t;}}
protected:
int*a,n;//指针a 用于存放数组首地址,n 用于存放数组元素个数
};
第1题:
插入排序算法的主要思想:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置。Insert类的成员函数sort()实现了插入排序算法,请填空。
class Insert{
public:
Insert(int *b0,int n0):b(b0),n(n0)<);//参数b0是某数组首地址,n是数组元素个数
void sort()
{//此函数假设已排序序列初始化状态只包含b[0],未排序序列初始为b[1]...b[n-1]
for(int i=1;i<n;++i)
{
int t=b[i];
int j;
for(______;j>0;--j)
{
if(t>=b[j-1])
break;
b[j]=b[j-1];
b[j]=t;
}
}
}
第2题:
从未排序序列中依次取出元素与已排序序列中的元素进行比较,将其放入已排序序列的正确位置上的排序方法称为()。
A.选择排序
B.希尔排序
C.堆排序
D.插入排序
第3题:
从未排序序列中依次取出元素与已排序序列中的元素比较,将其放入已排序序列的正确位置上的方法,称作()。
A.冒泡排序
B.插入排序
C.归并排序
D.选择排序
第4题:
从未排序序列中依次取出元素与已排序序列中的元素作比较,将取出的元素放入已排序序列中的正确位置上,此方法称为______。
A.归并排序
B.选择排序
C.交换排序
D.插入排序
第5题:
排序算法中,从未排序序列中依次取出元素同已排序序列中元素进行比较,将其放入已排序序列的正确位置的排序称为()。
A.希尔排序
B.插入排序
C.选择排序
D.冒泡排序
第6题:
排序算法中,从未排序序列中依次取出元素同已排序序列中元素进行比较,将其放入已排序序列的一端的排序称为()。
A.插入排序
B.选择排序
C.归并排序
D.冒泡排序