
C++
BrightHao_zi
天道酬勤
展开
-
快速乘和快速幂
//快速乘取模 long long int quick_multiply(long long int a, long long int b, long long int mod) { long long int res = 0;//记录结果 while (b) { if (b & 1)res = (res + a) % mod;//将b看做二进制,对应位为1的时候相乘再相加 ...原创 2019-02-15 00:05:17 · 390 阅读 · 0 评论 -
字典序(自己实现next_permutation)
问题:输入n,从小到大输出从1到n,n个数的字典序 步骤: 1.初始化,将1~n从小到大存入buf数组 2.n个数的全排列有n!个,则调用n!次,并输出字典序。 3.my_next_permutation实现: 从后往前遍历buf数组,每次比较buf[i],buf[i+1],找到第一个正序序列,记下此时的下标a=i; 从a开始往后遍历,找到后n-a-1个数中大于buf[a]且最小...原创 2019-02-15 18:55:31 · 459 阅读 · 0 评论