【数据结构与算法之查找算法一】顺序查找
2013-03-31 16:42
453 查看
【问题】在已知序列中找出与给定关键字相同的数的具体位置。
【解决方案】让关键字与队列中的数从第一个开始逐个比较,直到找到与给定关键字相同的数为止。
【输入】序列:71 23 56 85 17 29 93 64 39 49
【输出】若找到,则输出查找到的元素、位置和查找次数;否则输出“对不起,没有这个数!”。
代码如下:
存在问题: 若pos_key=8; 则
1)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key++<<endl;的结果为9*8。
2)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key<<endl;的结果为8*8。
3)语句cout<<"位置*次数为: "<<pos_key<<"*"<<++pos_key<<endl;的结果为9*9。(前置或后置递增操作符,改变了同一输出流里的所有原有的值???)
4)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key+1<<endl;的结果为8*9。(所求结果)
【解决方案】让关键字与队列中的数从第一个开始逐个比较,直到找到与给定关键字相同的数为止。
【输入】序列:71 23 56 85 17 29 93 64 39 49
【输出】若找到,则输出查找到的元素、位置和查找次数;否则输出“对不起,没有这个数!”。
代码如下:
// Find_shunxu.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include "iostream" using namespace std; /////////////////////////////////////////////////////////////// int fnFind_shunxu(int array[],int key,int num) { int i; for(i=0;key!=array[i];i++);//直接在终止条件中判断 return i<num ? i:-1; } //////////////////////////////////////////////////////////////// int _tmain(int argc, _TCHAR* argv[]) { int num; cout<<"输入序列中元素的个数: "; cin>>num; cout<<"请输入序列: "; int *array=new int[num]; for(int i=0;i<num;i++) { cin>>array[i]; } int key; cout<<"请输入关键字:"<<endl; cin>>key; int pos_key=fnFind_shunxu(array,key,num); if(pos_key!=-1) cout<<"查找元素*位置*次数为: "<<key<<"*"<<pos_key<<"*"<<pos_key+1<<endl; else cout<<"对不起,没有这个数!"<<endl; return 0; } //////////////////////////////////////////////////////////////////
存在问题: 若pos_key=8; 则
1)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key++<<endl;的结果为9*8。
2)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key<<endl;的结果为8*8。
3)语句cout<<"位置*次数为: "<<pos_key<<"*"<<++pos_key<<endl;的结果为9*9。(前置或后置递增操作符,改变了同一输出流里的所有原有的值???)
4)语句cout<<"位置*次数为: "<<pos_key<<"*"<<pos_key+1<<endl;的结果为8*9。(所求结果)
相关文章推荐
- 【数据结构与算法】顺序查找
- 【数据结构作业一】写出顺序表的结构体类型定义及查找、插入、删除算法,并以顺序表作存储结构,实现线性表的插入、删除
- 算法与数据结构之顺序查找(C语言)
- 【数据结构与算法】【查找】顺序查找(线性查找)的代码实现
- 数据结构算法学习-1. 查找(Search)概论与三种顺序查找算法
- 数据结构与算法--查找之顺序查找和二分查找
- 数据结构之算法2.6-在顺序线性表L中查找第1个值与e满足compare()的元素的位序
- javascript数据结构与算法---检索算法(顺序查找、最大最小值、自组织查询)
- 数据结构与算法-顺序查找
- 【数据结构与算法之查找算法二】二分查找
- 数据结构和算法学习五,之查找
- 常用查找数据结构及算法
- 数据结构与算法-折半查找(二分查找)
- 【数据结构与算法】【查找】哈希表的代码实现
- 数据结构实验之查找六:顺序查找
- 数据结构与算法-----队列-使用数组(顺序结构)实现
- 数据结构——算法之(026)( 调整数组顺序使奇数位于偶数前面)
- 【数据结构与算法】二分查找
- 数据结构之顺序表增、删、查找、初始化以及顺序表输出基本相关操作
- 转:数据结构——顺序查找