折半查找算法 - 范文中心

折半查找算法

08/17

折半查找

折半查找也称二分查找,但它要求查找表必须是顺序结构存储且表中数据元素按关键码有序。折半查找在查找成功时,所进行的关键码比较次数至多为⎡log2(n+1)⎤。平均查找长度为ASL=log2(n+1)-1,时间复杂度是O(log2n)。

折半查找的程序代码如下:

#include

#define MAXSIZE 10

typedef int DataType;

typedef struct S_T{

DataType data[MAXSIZE];

int length;

}S_T;

void CreateS_T(S_T *t){

int i;

cout

cin>>t->length;

t->data[0]='z';

for(i=1;ilength;i++)

cin>>t->data[i];

}

int Binary_Search(S_T *t,DataType kx){

int low,high,mid;

int count;

int flag;

low=1;

count=1;

high=t->length;

flag=0;

while(low

mid=(low+high)/2;

if(kxdata[mid])

high=mid-1;

else

if(kx>t->data[mid])

low=mid+1;

else{

flag=mid;

break;

}

count++;

}

cout

return flag;

}

void main(){

int i;

DataType kx;

S_T *t=new S_T;

CreateS_T(t);

cout

cin>>kx;

i=Binary_Search(t,kx);

if(i==0)

cout

else

cout


相关内容

  • [数据结构]期末考试题及答案
    2011-2012学年第一学期期末考查 <数据结构>试卷 (答案一律写在答题纸上,在本试卷上做答无效) 一.选择(每题1分,共10分) 1. 长度为n 的线性表采用顺序存储结构,一个在其第i 个位置插入新元素的算法时间复杂度为( ...
  • 数据结构导论试题1
    全国2004年10月高等教育自学考试 1.要将现实生活中的数据转化为计算机所能表示的形式,其转化过程依次为( ) A.逻辑结构.存储结构.机外表示 B.存储结构.逻辑结构.机外表示 C.机外表示.逻辑结构.存储结构 D.机外表示.存储结构. ...
  • 基于贪婪算法的自动排课表系统的研究与实现
    第29卷第18期Vol.29 No.18 计算机工程与设计 ComputerEngineeringandDesign 2008年9月Sept.2008 基于贪婪算法的自动排课表系统的研究与实现 王帮海1,2,李振坤1 (1.广东工业大学计算 ...
  • PHP冒泡排序和查找算法介绍
    最新PHP冒泡排序和查找算法介绍 以下是三零网为大家整理的最新PHP冒泡排序和查找算法介绍的文章,希望大家能够喜欢! 冒泡排序(bubble sort)的原理是什么? 冒泡排序的原理可以顾名思义:把每个数据看成一个气泡,按初始顺序自底向上依 ...
  • 数据结构试卷(附答案)
    计算机专业数据结构试题 一.单选题(每小题2分,共12分) 1.在一个单链表HL 中,若要向表头插入一个由指针p 指向的结点,则执行( ) . A . HL =p : p 一>next=HL B . p 一>next=HL :H ...
  • 页面置换算法
    页面置换算法 实验名称:页面置换算法 实验目的:编写页面置换算法演示程序,理解页面置换算法在虚拟存储器管理中的作用,理解常见的页面置换算法,学会OPT .LRU 和FIFO 算法的应用. 实验学时:2 实验内容:设计并编写一个页面置换算法模 ...
  • 网络中路由器的应用与配置
    摘 要 路由器是一种连接多个网络或网段的网络设备,它能将不同网络或网段之间的数据信息进行"翻译",以使它们能够相互"读"懂对方的数据,并能够高速的选择信息传送的线路,大大提高通信速度,减轻网络系统通信 ...
  • 时间复杂度的计算
    时间复杂度的计算 学习数据结构时,觉得时间复杂度计算很复杂,怎么也看不懂,差不多三年之后,还是不懂,马上就要找工作了,赶紧恶补一下吧: 首先了解一下几个概念.一个是时间复杂度,一个是渐近时间复杂度.前者是某个算法的时间耗费,它是该算法所求解 ...
  • 操作系统 磁盘管理 实验报告
    实 验 报 告 课程名称:院 系:专业班级:姓 名:指导老师: 操作系统 信息与控制工程学院 计算机0801 2010年 12月 31日 目录 一.实验目的 ......................................... ...
  • 数据结构课程设计题目详细要求
    课程设计方案及要求 一.课设说明 本次课设有两个方案,方案A 和方案B ,每个方案有两个题目(两个题目均要完成).大家可以任选一个方案进行课设. 二.时间安排 17周 周二 上午 软2 周二 下午 软3 周四 上午 软2 周五 上午 软2 ...