1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由2

字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由2

时间:2023-08-31 16:34:43

相关推荐

字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由2

#include#include//计算以第i个字符打头,长度为j的字符串的个数 int f(int i,int j){if(j == 1){return 1;} else{int count = 0;int k;for(k = i + 1;k <= 26 - j + 1;k ++){count += f(k,j - 1);}return count;}} //计算不超过j的总长度 int g(int j){int i;int count = 0;for(i = 1;i <= 26;i ++){count += f(i,j);}return count;}int main(){char *str = "ab";int pos = 0;int i,j;//printf("%d\n",str[0] - 'a' + 1);//计算位数小于字符串长度的字典序个数 for(i = 1;i < strlen(str);i ++){pos += g(i);}//计算第一个字符串第一个字母前面的字典序个数for(i = 1;i < (str[0] - 'a' + 1);i ++){pos += f(i,strlen(str));} //处理后续的for(i = 1;i < strlen(str);i ++){for(j = str[i - 1] - 'a' + 1 + 1;j < str[i] - 'a' + 1;j ++){pos += f(j,strlen(str) - i);} }printf("The string's position is:%d\n",pos + 1);return 0;}

字典序问题。在数据加密和数据压缩中常需要对特殊的字符串进行编码。给定的字母表A由26个小写字母组成。该字母表产生的升序字符串中字母从左到右出现的次序与字母在字母表中出现的次序相同 且每个字符最多出现1

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。