- 博客(10)
- 问答 (1)
- 收藏
- 关注
原创 关于函数传参的编译器优化问题
拷贝+拷贝=拷贝尽量使用const + &传参,减少拷贝的同时防止权限放大接收返回值对象,尽量拷贝构造方式接收,不要赋值接收【会干扰编译器优化】函数中返回对象时,尽量返回匿名对象【可以增加编译器优化】
2024-07-30 15:31:44 193
原创 寒假贪心算法
贪心算法(Greedy algorithm又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法没有固定的算法框架,算法设计的关键是贪心策略的选择,贪心策略使用的前提是局部最优能导致全局最优。必须注意的是,贪心算法不是对所有问题都能得到整体最优解,选择的贪心策略必须具备无后效性,即某个状态以后的过程不会影响以前的状态,只与当前状态有关。贪心算法是自顶向下的,而动态规划则是自底向上的。动态规划是自底向上求出
2022-02-20 18:44:46 375
原创 寒假基数排序
基数排序:基数排序是按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。时间复杂度:O(K * (N + M)),N为数据数量,M为字符取值范围,K为执行的计数排序次数。 空间复杂度:O(N + M), N为数据数量,M为字符取值范围。 稳定性:稳定。光说的话,你可能很难理解,举个栗子,假设原来有一串数值如下所示:73,22,93,43,55,14,28,65,39,81首先根据个位数的数值,在走访数值时将它们分配至编号0到9的桶子中:0181...
2022-02-13 20:40:35 320
原创 寒假二分查找算法
二分差找算法要点:二分查找法只适用于从有序的并且可比的队列中进行查找,或者将队列排序后再进行查找 二分查找法的时间复杂度为O(㏒₂n) ,即最多需要的步数下面给出一个简单二分代码.(递归实现)int mid_Search(int array[], int low, int high, int key){ if (low<=high) { int mid = (low+high)/2; //而是用 mid=low+((high-low)/2),.
2022-01-30 20:11:07 640
原创 寒假差分算法
差分差分就是将数列中的每一项分别与前一项数做差,例如:一个序列[1 7 6 5 2 4],差分后得到[1 6 -1 -1 -3 -2 -4]差分序列第一个数和原序列第一个数相同(相当于第一个数减去0)差分序列最后比原序列多一个数(相当于0减去最后一个数)性质差分序列求前缀和可得原序列 将原序列区间[L,R]中全部的元素+1,可以转化操作为差分序列L处+1,R+1处-1 按照性质2得到,每次修改原序列一个区间+1,那么差分序列修改处增加的和减少的相同例子题目描述有 N头牛.
2022-01-23 19:18:43 657
原创 寒假快速幂算法
快速幂就是计算a^b的一种算法,是一种比较常见的算法。首先我们看一道例题求A^B的最后三位数表示的整数。这道题看起来很简单,因为很容易想到用一个进行B次的循环来相乘long long num=1;for(int i=0;i<B;i++) num=num*A;num%=1000;虽然很简单,但存在很多问题,比如(0<=B<=1e9),B为1e9时,就要运行1e9次,时间肯定是不够用的,这个时候就要用到快速幂了,看题。求 a 的 b 次方对 p 取模的值。
2022-01-16 22:08:37 760 2
原创 一条线段两个点,找最少移动步数,使两个点重合
众所周知,yh学长 is very rich,他靠着玩超级大富翁的游戏富上加富,买下了地球的半座江山(另外半座他不想要啦!)。Of course,yh学长啥都有,这其中当然也包括养猪场。这天,yh学长正在养猪场里跟它们一起玩,他心血来潮点了个到:“花花、茉莉、小爱、仙子……???仙子呢?!Where are my dear Xianzi???!!!”yh学长忽然发现名为“仙子”的小粉猪不见了!Oh no!这可是他最心爱的一头猪!!!幸好yh学长在每只猪的身上都安装了高级GPS定位导航,通过智能腕表,
2021-11-30 19:50:12 159
空空如也
刚开始用vs2019有什么需要注意的吗?
2021-11-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人