算法:计数,编码,解码
2014-08-16 21:43
489 查看
杨辉三角
给定n求出中所有项的系数?
方法一:利用递推,根据规律,可以从第一层开始逐个的推导出系数,但我们只需要第n行的系数,却把n行所有的系数都求出来了,复杂度为O(n2)。
方法二:利用等式,从开始从左往右递推,这样就得到第n行的所有系数。
代码:https://code.csdn.net/snippets/452078
约数个数
给定n,求n的正约数个数?
首先要得到n唯一分解式,每个素因子的选择情况有0,1,2…ak共ak+1种,则根据乘法原理,n的正约数个数为:(a1+1)(a2+1)…(ak+1)=
其中n的唯一分解式可以通过从2开始逐个除n方法得到,每次找到一个素因子之后就把它“除干净”,即可保证找到的因子都是素数。
小于n且与n互素的整数个数
对于正整数n,求1,2,3…n中与n互素的个数?
容斥原理。首先要得到n唯一分解式,从总数n中减去p1,p2,…,pk倍数的个数,即,然后加上“同时是两个素因子的倍数”的个数,再减去“同时是3个素因子的倍数”。。。得到,传送中的欧拉公式,根据杨辉三角系数,可以变形为。
代码:https://code.csdn.net/snippets/452080
编码与解码
编码:快速写出任意一个字符串的编号,如有a<b<c,两个a,一个b,一个c组成的四位编码,输入acab,则输出5。
可以算出该字符串小的字符串个数,再加一就得到该字符串的编号。例如求f(caba)的编号,则编号为f(cba)+f(caa)+f(b)+1=11。其中设字符一共有k类,个数分别为n1,n2,…,nk,则有多重集的全排列个数为
解码:由编号得出字符串
例如,序号8,求字符串。序号8,有7个比他小的编码,则从高位开始,a,f(cba)=6<7,b,f(caa)=3,6+3=9>7,则最高位为b,ba,f(ca)=2,2+6=8>7,则高两位为ba,则baac为7,baca为8.
代码:https://code.csdn.net/snippets/452082
杨辉三角
给定n求出中所有项的系数?
方法一:利用递推,根据规律,可以从第一层开始逐个的推导出系数,但我们只需要第n行的系数,却把n行所有的系数都求出来了,复杂度为O(n2)。
方法二:利用等式,从开始从左往右递推,这样就得到第n行的所有系数。
代码:https://code.csdn.net/snippets/452078
约数个数
给定n,求n的正约数个数?
首先要得到n唯一分解式,每个素因子的选择情况有0,1,2…ak共ak+1种,则根据乘法原理,n的正约数个数为:(a1+1)(a2+1)…(ak+1)=
其中n的唯一分解式可以通过从2开始逐个除n方法得到,每次找到一个素因子之后就把它“除干净”,即可保证找到的因子都是素数。
小于n且与n互素的整数个数
对于正整数n,求1,2,3…n中与n互素的个数?
容斥原理。首先要得到n唯一分解式,从总数n中减去p1,p2,…,pk倍数的个数,即,然后加上“同时是两个素因子的倍数”的个数,再减去“同时是3个素因子的倍数”。。。得到,传送中的欧拉公式,根据杨辉三角系数,可以变形为。
代码:https://code.csdn.net/snippets/452080
编码与解码
编码:快速写出任意一个字符串的编号,如有a<b<c,两个a,一个b,一个c组成的四位编码,输入acab,则输出5。
可以算出该字符串小的字符串个数,再加一就得到该字符串的编号。例如求f(caba)的编号,则编号为f(cba)+f(caa)+f(b)+1=11。其中设字符一共有k类,个数分别为n1,n2,…,nk,则有多重集的全排列个数为
解码:由编号得出字符串
例如,序号8,求字符串。序号8,有7个比他小的编码,则从高位开始,a,f(cba)=6<7,b,f(caa)=3,6+3=9>7,则最高位为b,ba,f(ca)=2,2+6=8>7,则高两位为ba,则baac为7,baca为8.
代码:https://code.csdn.net/snippets/452082
相关文章推荐
- 编码与解码(数论中的计数问题) By ACReaper
- Huffam 编码、解码和生成编码表算法实现
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- 基于JavaScript的Base64编码、解码算法 推荐
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- Base64 编码解码算法(JS版)
- QR二维码编码解码原理算法介绍
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- chunked 编码 解码 c算法 - yaneng的专栏 - 博客频道 - CSDN.NET
- GeoHash 经纬度坐标编码与解码算法
- Base64 编码解码算法(JS版)[备忘录]
- VB里Base64编码与解码算法
- uva1262(排列计数的编码解码)
- VB里另一种更高效的Base64编码与解码算法
- 算法7 编码和解码TinyURL
- C++ base64编码和解码算法
- javascript utf-8 url 编码 之 纯算法 解码 by shawl.qiu 2007-9-24
- Cohen-SutherLand算法(编码算法)