C++初赛的三讲
C++初赛的三讲
- C++初赛第一/二讲链接:
- CSP-J算法串讲
- 完善程序解题思路
- 1.查找算法
- 顺序查找
- 二分查找
- 二分查找的步骤
- 二分查找法的代码
- 2.排序算法
- 冒泡排序
- 冒泡排序的代码
- 插入排序
- 插入排序的代码
- 选择排序
- 选择排序的代码
- 计数排序
C++初赛第一/二讲链接:
1.链接: C++初赛第一讲1.0
2.链接: C++初赛第一讲2.0
3.链接: C++初赛第二讲
CSP-J算法串讲
1.查找算法:顺序查找、二分查找。
2.排序算法:冒泡排序、插入排序、选择排序、计数排序
3.贪心算法。
4.分治算法
5.回溯算法。
完善程序解题思路
1.从总体上通读程序,大致了解程序的目的和算法;
2.猜测变量的作用,跟踪主要变量值的变化(列表),找出规律;
3.将程序分成每一小段,理清每一小段程序的作用和目的,
1.查找算法
顺序查找
定义:
假定要从n个元素中查找值x是否存在,最原始的方法就是从头到尾依次查找,这种查找的方法就叫顺序查找
inta[10]={6,7,8,2,3,4,1,80,10,36};
int search(int a[],int n, int key)
{int i;for(i-0;i<n; i++){if(a[i]=-key) return i;}return -1
}
二分查找
二分查找又称为折半查找,主要用于查找一个个有序数组中某一个数的位置,主要思想如下:
在一个有序数组中,取数组的中间值与要查找的数进行比较;
若要查找的数等于中间值,查找成功。
二分查找的步骤
1.若要查找的数大于中间值,则在右半区间继续取中间值与要查找的数进行比较;
2.若要查找的数小于中间值,则在左半区间继续取中间值与要查找的数进行比较;
3.直至最后要查找的数未出现过与中间值相等的情况,查找失败。
二分查找法的代码
int Search(int a[],int n,