![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
ziyouyi111
保持清醒,珍惜当下。
展开
-
C++算法三:选择排序
冒泡排序和选择排序都是低级排序,效率比较低。低级排序最简单的是冒泡排序。从当前未排序的整数中找一个最小的整数,将它放在已排序的整数数列列表的最后。要点:选择排序选最小的,往左边选。冒泡排序是选择最大的,而选择排序选择最小的,但是选择排序要相对冒泡排序要快,是因为冒泡排序中间有许多交换的操作,选择排序要找到最小然后进行交换。#include<iostream>using namespac...原创 2018-05-17 09:08:49 · 344 阅读 · 0 评论 -
熵,相对熵
1 信息熵的抽象定义熵的概念最早由统计热力学引入。信息熵是由信息论之父香农提出来的,它用于随机变量的不确定性度量,先上信息熵的公式。信息是用来减少随机不确定性的东西(即不确定性的减少)。我们可以用log ( 1/P )来衡量不确定性。P是一件事情发生的概率,概率越大,不确定性越小。可以看到信息熵的公式,其实就是log ( 1/P )的期望,就是不确定性的期望,它代表了一个系统的不确定性,信息熵越大...转载 2018-07-02 14:05:20 · 1732 阅读 · 0 评论 -
C++算法八:快速排序
最流行的排序算法,速度最快的排序算法1962年,C.A.R. Hoare发明了快速排序算法pivot:枢轴递归快速排序算法首先选取枢轴,一般选取最左边或最右边的值为枢轴,然后从数组的左右两端的值开始与枢轴的值进行比较,如果左边的值大于枢轴的值,右边的值比枢轴的值小则进行位置交换。#include <iostream>using namespace std;template<cla...原创 2018-05-29 20:13:31 · 151 阅读 · 0 评论 -
C++算法七:插入排序
低级排序冒泡排序(低级排序中速度最慢)选择排序插入排序(低级排序算法中最快的)#include<iostream>using namespace std;template<class T>void InsertionSort(T *a,int n);template<class T>void InsertionSort_2(T *a,int n);void ma...原创 2018-05-23 10:55:06 · 156 阅读 · 0 评论 -
C++算法二:冒泡排序
冒泡排序效率非常低,实际的软件的很少用,除了数据非常少。从左向右扫描数据,选择最大的的数据,放在右边。要点:比较相邻的两个数,如果左边的数据大于右边的就进行交换。#include<iostream>using namespace std;void BubbleSort(int list[],int n);//冒泡算法只有四行int main(){ int a[] = {2,4,6...原创 2018-05-15 22:04:49 · 133 阅读 · 0 评论 -
C++算法一:交换算法
本博客主要素材是观看算法视频的个人笔记,内容有些粗率,当作算学习的记录,后续会不断完善,欢迎交流。最基础的算法:交换(swap)常见的的交换算法主要有以下几种:void swap(int x,int y) -这种方法不行方法一:void swap(int *px,int *py)方法二:#define swap(x,y,t)((t)=(x),(x)=(y),(y)=(t))方法三:void swa...原创 2018-05-15 21:05:40 · 1225 阅读 · 0 评论 -
C++算法六:递归
递归的神,迭代的是人自己调用自己可以使用递归都可使用迭代(循环),递归在计算中需要暂存消耗内存,计算速度慢,优点清楚容易理解。#include<iostream>using namespace std;void doA(){ cout<<"hello"<<endl; doA();}int jiecheng(int n){ if (n =0) ...原创 2018-05-17 19:10:49 · 143 阅读 · 0 评论 -
C++算法五:二分查找(折半)查找
二分查找是对排序的数据进行排序,查找效率非常高。2的20次方是100万,就是(1M),折半查找100万个数据只需要20次2的30次方就是10亿,也就是(1G),折半查找只需要30次#include <iostream>using namespace std;int BinarySearch(int *a,const int x, const int n);int main(){ ...原创 2018-05-17 19:05:55 · 344 阅读 · 0 评论 -
C++算法四:顺序查找
顺序查找与折半查找(二分查找)没有顺序排序的数据:只能顺序查找,如果数据排序了使用顺序查找和折半查找都可以。顺序查找:速度慢例如:100万个数据,平均要查找50万次#include<iostream>using namespace std;int SequentialSearch(int *a,const int n, const int x);int main(){ int m...原创 2018-05-17 17:19:50 · 4504 阅读 · 0 评论 -
卷积和反卷积
卷积示意图A:卷积核矩阵,M卷积核的数量,也是输出的channel,K为卷积核的大小,K可以理解为k*k(卷积核的长、宽)。B:输入图像矩阵,K为对应卷积核大小的矩阵块。N为输出矩阵特征的长和宽。 N=((image_h + 2*pad_h – kernel_h)/stride_h+ 1)*((image_w +2*pad_w – kernel_w)/stride_w + 1) ...原创 2018-07-04 10:16:18 · 422 阅读 · 0 评论