prog7.cpp

来自「C++语言程序设计题典」· C++ 代码 · 共 47 行

CPP
47
字号
#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++)
		A[j]=a[j];
}
template <class T>
int Sample<T>::seek(T c)
{
	int low=0,high=n-1,mid;
	while (low<=high)
	{
		mid=(low+high)/2;
		if (A[mid]==c)
			return mid;
		else if (A[mid]<c) low=mid+1;
		else high=mid-1;
	}
	return -1;
}
void main()
{
	char a[]="acegkmpwxz";
	Sample<char> s(a,10);
	cout << "元素序列:";s.disp();
	cout << "元素'g'的下标:" << s.seek('g') << endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?