C语言快速查找与二分查找0804
来源:互联网 发布:windows android忘仙 编辑:程序博客网 时间:2024/06/16 05:58
在任何时候遇到任何事请,都不能阻挡我前进的脚步。
今天上午讲了快速排序的方法,与冒泡排序有异取同工之秒,但是其中还是也有很多的区别,快速排序的是主要是用用来查找数据,不能用来排序。
#include <stdio.h>void main(){ int a[5] = {12,3,23,45,56}; int min = 0; for (int i = 0; i < 5; i++) { if (a[i]<a[min]) { min = i; } } printf("%d",a[min]); getchar();}
**二分查找查找的条件是数组中的元素必须会顺序排列,方法就是取中间的数然后,跟之前的猜数字有相同点,主要的是要学会怎么应用方法的调用,记得,不同的方法之间会有返回值的。
代码仅供参考**。
#include <stdio.h>int seach(int array[], int len, int key){ int start = 0; int end = len - 1; while (start<=end){ int mid = (start + end) / 2; if (array[mid]==key){ return mid; } else { if (array[mid] >key){ end = mid - 1; } else { start = mid + 1; } } }return -1;}void main(){ //二分查找,数组中必须要从小到大排序 /*int a[5]; for (int i = 1; i <= 5; i++) { printf("请输入你的数组,空格分开"); snanf_s("%d", &i); a[i - 1] = i; }*/ int a[5] = {4,5,6,7,8}; //scach(a, 5, 3); printf("请输入你要查找的数"); int key; scanf_s("%d",&key); getchar(); printf("%d",seach(a, 5, key)); getchar();}
重点学习数组
类型 变量名[大小]={};一位数组的定义方式。
描述:
1、内存当中的描述:有大小=N个数据为类型的这样的数据连续存储
2、数组的初始化
(1)int a[10] = {1,2,3,4,5,…..};
(2)int a[] = {1,2,3,4……};
3、赋值操作
0-n,a[0-n] = xx;
4、取值的关键(下标取值)
二维数组
1、定义格式
(1)int a[1][2] = {}; 1.行数 2.列数
2.一维数组和二维数组中间联系
Int a [2][3] = {{1,2,3},{4,5,6}};
这个是二维数组初始化特殊的地方以一维数组的方式进行初始化,如果没有赋值采取和一位数组一样的方式,进行默认值的显示
3.int a[][] = {};错误的
4.int a[][3] = { { 1, 2, 3 }, { 2, 3, 4 },{4,5,6} };
重点注意数组定义的时候行和列之间的关系。
0 0
- C语言快速查找与二分查找0804
- c语言快速排序与二分查找算法
- C语言:二分查找
- 【c语言】二分查找
- C语言 二分查找
- 二分查找 C语言
- 二分查找(C语言)
- C语言二分查找
- 二分查找C语言
- 二分查找(折半查找)与冒泡排序(C语言)
- C语言实现数组二分查找与顺序查找
- c语言归并、选择、直接插入、冒泡、快速、堆排序与顺序、二分查找
- 快速排序和二分查找算法的实现C语言
- c语言 快速排序 和 二分 查找 模型
- C语言 折半查找(二分查找)
- c语言 二分查找 折半查找
- C语言:顺序查找和二分查找
- 快速排序与 二分查找
- mysql 下locate和find_in_set的使用
- Cannot resolve corresponding JNI function
- **YII** 系列七Database
- Html JS 小技巧
- ViewPager在首尾页滑动切换
- C语言快速查找与二分查找0804
- jQuery自定义表单验证
- vim编码方式的设置
- ./rabbitmq-server:行63: erl: 未找到命令
- ubuntu下 Gedit 中文乱码(命令行模式简单)
- 百度地图API获取发布版SHA1
- Qt之findChild
- Duplicate files copied in APK
- 问题记录