没有合适的资源?快使用搜索试试~ 我知道了~
插入排序法C程序实现
4星 · 超过85%的资源 需积分: 9 17 下载量 133 浏览量
2009-09-16
16:59:57
上传
评论
收藏 3KB TXT 举报
温馨提示
试读
6页
折半查找法采用循环和递归调用两种方式实现;还有直接插入排序法的C实现!
资源推荐
资源详情
资源评论
//二分查找法循环实现
#include <stdio.h>
#define SIZE 10
int data[SIZE] = {1, 3, 4, 6, 7, 9, 10, 11, 45, 100};
int main(void)
{
int val = 1;
int po = -1;
int start = 0, end = SIZE -1;
do {
if (start > end) {
po = -1;
break;
}
po = (start + end) /2;
if (data[po] > val) end = po;
if (data[po] < val) start = po;
if (data[po] == val) break;
}while(1);
if (po != -1) printf("Search %d complete!", data[po]);
}
//二分查找法递归实现
#include <stdio.h>
#define SIZE 10
int data[SIZE] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100};
int step = 0;
int two_search(int start, int end, int val);
int main(void)
{
int val = 60;
int p = two_search(0, SIZE-1, val);
if (p != -1) printf("Search %d value by %d step!\n",data[p], step);
return 0;
}
int two_search(int start, int end, int val)
{
step++;
int p = 0;
if (start == end) {
if (data[start] == val) return start;
剩余5页未读,继续阅读
资源评论
- tolilei2013-09-04算法中蛮重要的,不知道是不是我需要的
- irishcoffeema2013-03-17和题目描述不一致
- wywdjc2012-07-22什么呀?!不是插入排序啊,是选择排序吧
- cute流氓兔2013-12-10很好的算法,很有参考价值!!!
zhaopan8711
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功