Fork me on GitHub

随笔分类 -  基础算法

排序、二分、高精度、前缀和与差分、双指针算法、位运算、离散化、区间合并
摘要:哈希表的存储结构 1. 开放寻址法 2. 拉链法 memset是按字节来初始化的,int中有四个字节,初始化成0x3f就是将每个字节都初始化成0x3f,所以每个int就是 0x3f3f3f3f 通过哈希函数h(x) 这个函数可以映射到某个位置 1. x mod 10^5 2. 冲突,两个不一样的数但 阅读全文
posted @ 2020-04-11 23:00 WalterJ726 阅读(161) 评论(0) 推荐(0)
摘要:title: kmp算法 tags: ACMer categories: String thumbnail: https://gss3.bdstatic.com/84oSdTum2Q5BphGlnYG/timg?wapp&quality=80&size=b150_150&subsize=20480& 阅读全文
posted @ 2020-03-10 23:04 WalterJ726 阅读(155) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/qq_44786250/article/details/100056975 unique返回尾坐标 解题思路 要算某个区间的和,直接使用前缀和来做就可以了 但是当这些区间的点中间很多个0的话,我们还是需要把他进行离散化 就是把原来的坐标映射到另外一个坐标当 阅读全文
posted @ 2020-03-01 10:47 WalterJ726 阅读(128) 评论(0) 推荐(0)
摘要:区间合并 解题思想: 首先把所有的区间从左到右排序 然后把所有可能面临的区间合并的情况列出来 1. 区间左边是对齐的(合并最大的) 1. 区间右边小于上一个区间右边 2. 区间右边大于上一个区间右边 2. 区间右边是下一个区间左边的(需要合并,且多加一个) 因为处理的是区间,所以用pair来存比较好 阅读全文
posted @ 2020-03-01 10:02 WalterJ726 阅读(198) 评论(0) 推荐(0)
摘要:n的第k位数是几 先把这个数字移动k位 然后再判断个位是什么 lowbit(x)是返回最后的一位1 x = 101010 最后一位1 ~x = 010101 最后一位1 ~x + 1 就会导致最后一位0变成1,然后全部都被取出来了 补码的意义 x就是x的补码 补码就是~x+1 原数字找到最后一个1, 阅读全文
posted @ 2020-02-28 15:12 WalterJ726 阅读(118) 评论(0) 推荐(0)
摘要:1. 指向两个序列 2. 指向一个序列 1. 维护一段区间,就像快排一样 一般的样子 阅读全文
posted @ 2020-02-28 14:22 WalterJ726 阅读(121) 评论(0) 推荐(0)