Exemplo n.º 1
0
int SeqSearch(T a[],const T& x,int n)
{
  if(n<1)
    return -1;
  if(a[n-1]==x)
    return n-1;
  return SeqSearch(a,x,n-1);
}
Exemplo n.º 2
0
/**************產生樂透號碼**************/
void generate_lotto(int* spec_num, int* arr, int arr_index) {
    int i, generate_num;
    srand((unsigned) time(NULL));

    for (i = 0; i < arr_index; i++) {
        generate_num = rand() % 42 + 1;

        while (SeqSearch(generate_num, arr, i + 1) != -1) { /*  是否重複  */
            generate_num = rand() % 42 + 1;
        }

        arr[i] = generate_num;
    }

    generate_num = rand() % 42 + 1;

    while (SeqSearch(generate_num, arr, i) != -1) { /*  特別號是否與其他號碼重複  */
        generate_num = rand() % 42 + 1;
    }

    *spec_num = generate_num;
}
Exemplo n.º 3
0
int main(int argc,char** argv)
{
  int a[10000];
  int x;
  int i;

  cout<<"Please input the number to be searched:";
  cout<<endl;
  cin>>x;
  
  for(i=0;i<10000;i++)
    a[i]=i;

  SeqSearch(a,x,10000);

  return 0;
  
}
Exemplo n.º 4
0
void main()
{
	SeqList R;
	int n=10,i;
	KeyType k=5;
	int a[]={3,6,2,10,1,8,5,7,4,9};
	for (i=0;i<n;i++)				//建立顺序表
		R[i].key=a[i];
	printf("关键字序列:");
	for (i=0;i<n;i++)
		printf("%d ",R[i].key);
	printf("\n");
	printf("查找%d所比较的关键字:\n\t",k);
	if ((i=SeqSearch(R,n,k))!=-1)
		printf("\n元素%d的位置是%d\n",k,i);
	else
		printf("\n元素%d不在表中\n",k);
	printf("\n");
}
Exemplo n.º 5
0
void main(){
	SSTable S1={{123,23,34,6,8,355,32,67},8};
	SSTable S2={{11,23,32,35,39,41,45,67},8};
	SSTable S3={{6,12,23,16,21,26,41,32,37,35,48,46,49,47,52,61,59,76,68,72},20};
	IndexTable T={{23,0},{41,5},{52,10},{76,15}};
	DataType x={32};
	int pos;
	if((pos=SeqSearch(S1,x))!=0)
		printf("顺序表的查找:关键字32在主表中的位置是:%2d\n",pos);
	else
		printf("查找失败!\n");
	if((pos=BinarySearch(S2,x))!=0)
		printf("折半查找:关键字32在主表中的位置是:%2d\n",pos);
	else
		printf("查找失败!\n");
	if((pos=SeqIndexSearch(S3,T,4,x))!=0)
		printf("索引顺序表的查找:关键字32在主表中的位置是:%2d\n",pos);
	else
		printf("查找失败!\n");
	system("pause");
}
Exemplo n.º 6
0
int main(int argc, char const *argv[])
{
	int arr[] = {1,2,3,4,5,7,9};
	int res;
	int len;
	len = sizeof(arr)/sizeof(arr[0]);
	res = SeqSearch(arr,len,5);
	printf("-----SeqSearch----\n");
	if (0 == res)
	{
		printf("Not find\n");
	}
	else
		printf("Find, location:%d\n", res+1);
	printf("-----BinSearch-----\n");
	res = BinSearch(arr,len,3);
	if (0 == res)
	{
		printf("Not find\n");
	}
	else
		printf("Find, location:%d\n", res+1);
	return 0;
}