AL:数据结构与算法
通俗易懂
Linux小魔王
写优质文章,记录美好生活,给别人讲懂,才是真正的理解,未来可期。
展开
-
折半查找(二分查找)-C++版
折半查找(二分查找)必须先排序,不然不能使用二分查找2^20 = 100万(就是1M) 约等于; 找20次2^30 = 10亿(就是1G) 约等于; 找30次有趣的例子:兰州拉面`#include<iostream>using namespace std;//int BinarySearch(int* a, const int x,const int n); //函数声明,数据的个数是n,要找的数据是x 竖着放int BinSearch(int原创 2020-06-19 00:23:21 · 524 阅读 · 0 评论 -
顺序查找-C++版
●算法:顺序查找顺序查找与折半查找(二分查找)没有排序的数据:只能顺序查找顺序查找:速度慢例如:100万个数据,平均要找50万次!#include<iostream>using namespace std;int SequentialSearch(int* a, const int n, const int x); //数组a有n个数 找x 函数的声明int main(){ int m[] = { 2,4,6,8,0,1,3,5,7,9 }; int 结果; in原创 2020-06-19 00:22:17 · 1031 阅读 · 0 评论 -
选择排序--C++版
选择排序 (比冒泡排序快一点,冒泡排序慢在有很多交换)从当前未排序的整数中找一个最小的整数,将它放在已排序的整数列表的最后。要点:选择排序选最小的,往左边选。想像:一条毛巾冒泡排序 与 选择排序#include<iostream>using namespace std;void SelectSort(int* a, const int n); //声明一个函数int main(){ int x[] = { 1,3,5,7,9,0,2,4,6,8 }; //定义一个数组。原创 2020-06-19 00:21:14 · 332 阅读 · 0 评论 -
简单的冒泡排序 ---C++版
冒泡排序从左向右扫描数据,选择最大的数据,放在右边。要点:比较相邻的两个数,如果左边的数大于右边的数就进行交换#include<iostream>using namespace std;void BubbleSort(int list[], int n); //写函数的声明,要排序的数据放在一个数组里,数据的个数用n表示int main(){ int a[] = { 2,4,6,8,0,1,3,5,7,9 }; BubbleSort(a, 10); for (int k原创 2020-06-16 15:55:15 · 424 阅读 · 0 评论 -
C/C++版本swap算法(交换算法)
交换(swap)#include<iostream>using namespace std;int main(){ int a, b, tmp; a = 1; b = 10; cout << "a= " << a << ", b = " << b << endl; tmp = a; //把a中的水倒入tmp a = b ; //把b中的咖啡倒入a中 b = tmp; //把tmp中的水倒入b 中 cout原创 2020-06-16 15:52:28 · 558 阅读 · 0 评论