kalifaの日々

53 篇文章
29 人订阅

编程算法

kalifa_lau

POJ2431-最优队列(最小堆)解法

这道题有一个坑,就是给出的加油站到终点的距离不一定是降序排列好了的。 所以得到input之后要先对数据进行排序。我直接用了#include<algorithm>...

35870
kalifa_lau

线段树 BIT 求冒泡排序的交换次数

线段树特别适合与区间相关的运算,比如MRQ(minimum range query)求一段区间内的最小值。 BIT可以看作是压缩了的线段树,由于(某类)线段树...

47280
kalifa_lau

动态规划真的可以为所欲为的(Leetcode 62/63)

看起来不错的运行效率 62题: 动态规划递推公式: 站在当前方块上可选择的路径数量 = 我正下方那个方块可选择的路径数量 + 我右侧那个方块可选择的路径数量; ...

37660
kalifa_lau

大数的十进制转换成二进制

要求输出最多有30位的十进制数的二进制表示。 10的30次方大概是2的100次方,最大的long long int最多也只能表示到2的64次方,所以用字符串来...

33660
kalifa_lau

检测一个int n是否是k的整数次幂的通用方法

1.如果k是质数,那么先求出int范围内能被表示的最大的k的x次方——max,然后判断max%n==0。 例如判断一个数n是否是3的指数次幂: int max...

36060
kalifa_lau

一个易于理解的C++全排列(permutation)实现

通常我们用这两条语句可以得到一个数组的全排列: sort(nums.begin(),nums.end()); //调用next_permutation求全排列...

35550
kalifa_lau

大数乘法

其实大数乘法就是在考虑大数加法的进位的同时,考虑字符串num1和字符串num2相乘时,每一位所在的位置,以及加法运算中多了一个乘法项。 可运行的cpp代码 cl...

37940
kalifa_lau

C++迪杰斯特拉最短路径算法实现

input 第一行表示这个图有4条边,下面五行代表这个图的5条边。 4 0 2 2 0 1 5 1 3 2 2 3 6 -1 0 0 ? 输入样例 out 分别...

34240

扫码关注云+社区

领取腾讯云代金券