Chinaunix首页 | 论坛 | 博客
  • 博客访问: 766362
  • 博文数量: 370
  • 博客积分: 2334
  • 博客等级: 大尉
  • 技术积分: 3222
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-06 16:56
文章分类

全部博文(370)

文章存档

2013年(2)

2012年(368)

分类:

2012-06-09 12:24:03

原文地址:查找算法 作者:flychenxu

1、顺序查找
bool SequeueSearch(int array[], int n, int key, int &index)
{
 for (int i = n-1; i >= 0; i--)
 {
  if (array[i] == key)
  {
   index = i;
   break;
  }
 }
 if (i < 0)
 {
  return false;
 }
 else
 {
  return true;
 }
}

2、折半查找
bool BinSearch(int array[], int n, int key, int &index)
{
 int low = 0;
 int high = n - 1;
 int mid;
 while (low <= high)
 {
  mid = (low + high)/2;
  if (array[mid] == key)
  {
   index = mid;
   return true;
  }
  else if (array[mid] > key)
  {
   high = mid - 1;
  }
  else
  {
   low = mid + 1;
  }
 }
 return false;
}
 
3、二叉查找树
阅读(410) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~