更多"[说明] 设计一个类模板Sample用于对一个有序数组采用二分法查找"的相关试题:
[填空题][说明]
设计一个类模板Sample用于对一个有序数组采用二分法查找元素下标。
[c++程序]
#include<iostream. h>
#define Max 100 //最多元素个数
template<class T>
class Sample
T A [Max]; //存放有序数序
int n; //实际元素个数
Public:
Sample //默认构造函数
Sample(T a[] ,int i); //初始化构造函数
int seek(T c);
void disp
for (int i=0; i<n; i++)
cout<<A [i]<<" ";
cout<<endl;
;
template<class T>
Sample<T>::Sample(T a[],int i)
n=I;
for (int j=0; j<I; j++)
(1) ;
template<class T>
int Sample<T>::seek(T c)
int low=0,high=n-1,mid;
while( (2) )
mid=(low+high)/2;
if( (3) )
return mid;
else if ( (4) )
low=mid+1;
else
(5) ;
return-1;
void main( )
char a[]="acegkmpwxz";
Sample<char>s(a,1.);
cout<<"元素序列:" ;s. disp( );
cout<<"元素’g’ 的下标: "<<s. seek(’g’)<<endl;
[简答题]【说明】
设计一个类模板SamPle用于对一个有序数组采用二分法查找元素下标。
【C++程序】
#include < iostream. h >
#define Max 100 //最多元素个数
template < class T >
class Sample
T A[Max]: //存放有序数序
int n: //实际元素个数
public
Sample( ) //默认构造函数
Sample(T a[] ,int i); //初始化构造函数
int seek(T c);
void disp( )
for(int i=0;i <n;i ++)
cout<<A[i] <<" ";
cout<<endl:
template < class T >
Sample <T>: :Sample(T a[ ],int i)
n=i:
for( intj =0;j < i;j ++ )
(1) ;
template < class T >
int Sample < T >:: seek( T c)
int low =0,high = n-1 ,mid;
while( (2) )
mid = (low + high)/2;
if( (3) )
return mid;
else if( (4) )
low=mid+|;
else
(5) ;
return-1;
void main( )
char a[ ] ="acegkmpw
[填空题]若需要把一个函数"void Func( );"定义为一个类Sample的友元函数,则应在类 Sample的定义中加入一条语句 【8】 。
[填空题]若需要把一个函数"void Furic( );"定义为一个类Sample的友元函数,则应在类Sample的定义中加入一条语句______。
[简答题]阐述用二分法求解方程近似解的适用范围及步骤,并说明高中学术新课程中引入二分法的意义。
[填空题]二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是().
[填空题]对于长度为n的有序线性表,在最坏情况下,二分法查找只需比较______次。