摘要: 首先如果你是一段语句 for(int i=0;i<a.size();i++)这个时候会报错 comparison between signed and unsigned integer expressions 其实我们要理解到a.size()的出来的结果其实是无符号数,所以这里直接比较会有一个报错, 阅读全文
posted @ 2020-05-19 22:25 Swithun 阅读(645) 评论(0) 推荐(0)
摘要: 有这样一道排序题:数组里有20个随机数,取值范围为从0到10,要求用最快的速度把这20个整数从小到大进行排序。 第一时间你可能会想使用快速排序,因为快排的时间复杂度只有O(nlogn)。但是这种方法还是不够快,有没有比O(nlogn)更快的排序方法呢?你可能会有疑问:O(nlogn)已经是最快的排序 阅读全文
posted @ 2020-03-31 14:16 Swithun 阅读(200) 评论(0) 推荐(0)
摘要: 这个主要是通过二进制来生成子集,比如三个元素总共二进制数有2^3个,然后通过0 2^3中每个数和1进行位于然后得出哪位有1最后就可以得出每个子集 void print_subset(int n,int s) 2 { 3 for(int i = 0;i<n;i++) 4 { 5 //cout << s 阅读全文
posted @ 2020-03-31 12:22 Swithun 阅读(767) 评论(0) 推荐(0)
摘要: 首先介绍:邻位互换算法 原理:首先会先给数据排序(从小到大),然后给这些数据赋上移动数据,比如最开始都给他们赋值为-1表示能向左移,其实在这里只用一个新数组来存储移位数据就可以了,比如我们现在3是可以左移的,3的位置是2,然后通过去找移位数组里面的值,发现对于位置2的值为-1,只用拿2-1就可以得到 阅读全文
posted @ 2020-03-31 11:11 Swithun 阅读(255) 评论(0) 推荐(0)
摘要: 循环冗余校验码(Cyclic Redundancy Check ,CRC)是一种检错、纠错能力很强的数据校验码,主要用于计算机网络、同步通信及磁表面存储器等应用场合。 在被除数后面添加比P少一位的3个零,然后进行模二运算,最后把余数和最开始添加的3个零进行代换。在进行数据传送的时候,可以在与p进行相 阅读全文
posted @ 2020-03-24 12:16 Swithun 阅读(790) 评论(0) 推荐(0)
摘要: 通过数代人的努力,你终于赶上了剩男剩女的大潮,假设你是一位光荣的新世纪媒人,在你的手上有N个剩男,M个剩女,每个人都可能对多名异性有好感(-_-||暂时不考虑特殊的性取向),如果一对男女互有好感,那么你就可以把这一对撮合在一起,现在让我们无视掉所有的单相思(好忧伤的感觉),你拥有的大概就是下面这样一 阅读全文
posted @ 2020-03-23 22:30 Swithun 阅读(171) 评论(0) 推荐(0)
摘要: 插入排序的基本思想是:将数组的第一个数认为是有序数组,从后往前(从前往后)扫描该有序数组,把数组中其余n-1个数,根据数值的大小,插入到有序数组中,直至数组中的所有数有序排列为止。这样的话,n个元素需要进行n-1趟排序!!! 举个例子:4个数字4,6,7,5进行从大到小的排序。前插排序法具体过程如下 阅读全文
posted @ 2020-03-18 22:34 Swithun 阅读(137) 评论(0) 推荐(0)
摘要: 通过前面的快速排序算法我们基本上已经知道,它是通过两个标记点把左边分为大于首元素的部分,右边为小于首元素的部分。然后又再给左右两边用快速排序。 然后现在我们提出一个问题,如果任意给定的一个数组,我们现在要找出它里面第几大的元素。这时该怎么办?先排序吗?你要知道就算是快速排序的复杂度也是nlogn。那 阅读全文
posted @ 2020-03-18 22:25 Swithun 阅读(512) 评论(0) 推荐(0)
摘要: 归并排序其实就把数组分成两个部分,然后进行递归,依次排序。 其实一直分的话,最后数组会被分为2个2个一组的数组,他们之间的排序就非常简单了。 假设现在有一个数组[32,12,56,78,76,45,36] 从下向上来看,每次排序完后再合并,分而治之。 上代码!!! #include <stdio.h 阅读全文
posted @ 2020-03-18 21:51 Swithun 阅读(245) 评论(0) 推荐(0)
摘要: 关于快速排序,首先我们不展开讲解,我们先给定一组数组[72,6,57,88,60,42,83,73,48,85]对它来进行排序(你只用跟着我思路来就行了,后面你就会慢慢懂快速排序) 首先我们设置一个两个标记点i,j。i标记要排序的数组的首位置,j标记要排序的数组的末位置。然后拿一个X值去记录一下数组 阅读全文
posted @ 2020-03-18 11:06 Swithun 阅读(159) 评论(0) 推荐(0)