数据结构和算法
mowenliunian
这个作者很懒,什么都没留下…
展开
-
交换算法
1. 无效的交换---传值不能实现两个变量的交换,操作的是变量的副本。void swap(int x, int y);2. C语言交换方法(1)传指针可以实现两个变量的交换,但局限于变量类型。void swap(int *px, int *py);(2)宏定义可以实现两个变量的交换,变量类型不受限制。#define SWAP(x, y, t) ( (t)原创 2016-10-30 18:07:57 · 327 阅读 · 0 评论 -
查找算法
1. 顺序查找从第一个元素开始,直到找到与目标值相等的元素或遍历完整个容器。可用于任意容器。代码如下:// 顺序查找int SequentialSearch(int * pArr, int nSize, int nTarget){ for(int i = 0; i < nSize; i++) { if(pArr[i] == nTarget) { return i;原创 2016-10-30 17:48:49 · 182 阅读 · 0 评论 -
排序算法
1. 冒泡排序从左往右扫描数据,依次比较相邻两个元素,如果左边的元素大于右边的元素就交换,每次扫描中最大的元素被交换到了最右边。由于交换次数较多,该算法的效率较低。代码如下:// 冒泡排序void BubbleSort(int * pArr, int nSize){ // 共进行nSize - 1次扫描 for(int i = 0; i < nSize - 1; i++) {原创 2016-10-30 21:12:50 · 215 阅读 · 0 评论