2022-09-30
使用数组模拟链表相对于使用结构指针,拥有更高的效率(省去了动态分配内存的环节)
c++代码
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#include <iostream>using namespace std;co...
阅读全文
2022-09-29
归并排序模板归并和 快排 同样属于分治算法
12345678910111213141516171819int tmp[N];void merge_sort(int * p,int l,int r){ //递归的终止条件 if(l>=r) return; //1.确定子问题分界点 int mid = l+r>>...
阅读全文
2022-09-27
快排属于分治算法,分治算法都有以下几个步骤。
1.分成子问题 -> 2.递归处理子问题 -> 3.合并子问题
快排的步骤分为:
1.确定基准值 x ,可取随机一个元素2.调整区间,使得 [l,x]<=x** , **[x,r]>=x3.递归处理左右区间
12345678910111213141516void q...
阅读全文
2022-09-25
题解:题目标签是二分查找,但给出数组是无序的,使用二分查找的方法需新建一个sum[numberSize] 数组,sum[i] 存储 nums[0]- nums[i] 的和因为题目给出的是正整数,这样可以确认sum 数组是单调递增的。我们只需要找到 sum[k]-sum[j]>=target ,那么k-j 便是和大于等于target且连续的子...
阅读全文
2022-07-25
AcWing831.KMP字符串 题目链接
题目如下:
KMP是真勾八难,折腾了一晚上才勉强整明白,特别是推导next数组的步骤,看了好几篇博客代码都不一样,在纸上跟着推了一遍才看明白。
(偷一波社区dalao的推导,链接在这)最后AC的代码和注释
123456789101112131415161718192021222324252627282930313...
阅读全文
2022-06-14
前缀和什么是前缀和?给出数组 a[] (a[1],a[2],….a[n])设数组 b[] 为数组 a[] 的前缀和数组,即
b[i] = a[1] + a[2] + a[3] + …. + a[i]
前缀和的下标一定要从1开始,避免无必要的对下标进行转换
前缀和的作用主要是用于快速筛选出一段区间的和。如对于 a[] 数组想要得出 [l,r] 区间内...
阅读全文
2022-05-30
二分虽然思想简单,做了两天的题下来发现实际应用到题目中并没有想象中那么轻松,在此记录下笔记和归纳总结一下几道题目的ac过程以备以后复习时使用。二分的思想很简单,以下给出定义。
给定一个升序排列的数组 nums ,在其中寻找某个值target,设两个指针 l r 分别指向> 数组左右边界,每次取区间的中点 l+r>>1 为 mid ,当 n...
阅读全文
2022-04-09
早上突然连不进玩家跨服同步背包的数据库了,查询了一下文档大致原因是意外断电导致的表损坏,尝试了一下navict自带的修复未成功进入mysql根目录下使用
myisamchk -r ../playerdatasql.MYI
执行后报如下错误原因是数据记录数太长,内存不足,将原先指令增加参数–max-record-length=16673...
阅读全文
2022-02-23
接到一个小需求,需要在指定时间段里每隔x分钟跑一段逻辑(如9:0:0-3:0:0 每隔90分钟执行一次)原先打算用Quartz实现,翻阅了一下文档,似乎无法做到59分钟之外的增量。而且为了这么小一个需求硬塞一个库进去感觉有点不妥折腾了一下午,在此把代码记录一下,有空加进自己的类库整理成工具类
123456789101112131415161718192021...
阅读全文
2022-02-14
最近将hexo博客迁移到了腾讯云的linux(centos)服务器上,在这里记录linux下多用户管理组的一些知识点,方便用的时候查阅
组的概念
Linux作为多用户操作系统,使用组的概念来更方便的管理权限。在linux中每个用户都必须属于一个组,不能独立于组之外。我们使用以下指令来管理组
groupadd [group] 创建组groupdel [gro...
阅读全文