随笔分类 -  小技巧/刷题心得

摘要:总结—二分答案求解问题 我们经常会犯的一个错误就是不求慎解,只觉得“会了”就轻轻放下,其实根本没有真正的搞懂这些东西。 二分,简单算法,文化课都要学的东西。 当初对它的理解就是:很方便地求“最大值最小”/“最小值最大”。 当然,这也是二分答案算法的一个标志。但是我们需要思考的是:为什么二分可以求解“ 阅读全文
posted @ 2020-09-24 08:56 Seaway-Fu 阅读(199) 评论(2) 推荐(0)
摘要:小技巧—数组初始化 简单说一下memset函数的使用方法。 memset函数会把一个类型的东西按字节清空,一个字节是8位,所以按理讲memset对int数组实现统一赋值的操作的时候只能赋值0或者-1。如果不这样的话,就会导致一个循环出现。比如,你想对整个数组赋值2的话,因为2的二进制是10,八位的话 阅读全文
posted @ 2020-09-18 14:49 Seaway-Fu 阅读(191) 评论(0) 推荐(0)
摘要:小技巧—取模防负 本篇随笔介绍取模防负数的小技巧。 这个应用在减法取模的过程中。我们为了保证在计算过程中的答案不溢出,一定会选择在算法执行过程中反复对其进行取模,显而易见这种做法也能保证最终答案的正确性,而不需要把整个算法执行完之后再统一取模。 但是,减法稍有不同。我们在这个连续取模的过程中,有可能 阅读全文
posted @ 2020-09-18 09:14 Seaway-Fu 阅读(711) 评论(0) 推荐(1)
摘要:小技巧—计算内存 本篇随笔记录一下如何计算程序需要使用的内存。 一个int类型的变量是4个字节,4 B. 一个字符型变量char是1个字节,1B. 换算规律是: 1G=1024M 1M=1024K 1K=1024B 后面的零头24可以忽略了。那么我们最后的计算就是:(以整型数组为例) 数组大小*4/ 阅读全文
posted @ 2020-09-15 13:57 Seaway-Fu 阅读(721) 评论(0) 推荐(0)
摘要:数组的随机打乱 本篇随笔介绍一下一个小技巧:数组的随机打乱。 有两种方式,第一种是用STL里的random_shuffle函数,第二种是手写。 第一种:STL 就是介绍一下random_shuffle函数的用法。 传两个参数,表示数组的首尾元素即可。 random_shuffle(a+1,a+n+1 阅读全文
posted @ 2020-04-01 20:15 Seaway-Fu 阅读(1687) 评论(0) 推荐(1)