hash值的计算与转换 分类: ACM TYPE 2015-05-07 17:49 36人阅读 评论(0) 收藏
2024-09-01 19:11:35
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100;
const int X = 3;
long long f[1005];
void init() {
f[0] = 1;
for(int i = 1;i < MAXN; i++) {
f[i] = f[i-1]*X;
}
}
int hash(string num)
{
int ans = 0;
for (int i = 0; i < num.length(); ++i)
ans = ans*f[i] + num[i] - '0';
return ans;
}
int convert(string num, char c,int d)
{
int len = num.length();
int h = hash(num);
return ((c-num[d])*f[len-d-1] + h);
}
int main()
{
freopen("in.in","r",stdin);
init();
cout<<hash("33")<<endl;
cout<<convert("33",'1',0);
return 0;
}
一直以来碰到哈希问题就怂了一逼,哪里敢去做
终于决定不能在这样下去了,所以,总结了哈希值的计算,和哈希值的转换函数
助各位客官超超神
版权声明:本文为博主原创文章,未经博主允许不得转载。
最新文章
- dedecms为文档页增加动态点击
- MongooseJS 4.6.4 发布,MongoDB 连接包
- python实现的视频下载工具you-get,支持多个国内外主流视频平台
- SAP Business One系统功能介绍
- Java单例模式实现的几种方式
- springMVC 的工作原理和机制(转)
- 用户Word写毕业论文时的文献引用方法
- PHP导出数据库数据字典脚本
- poj 1054 The Troublesome Frog (暴力搜索 + 剪枝优化)
- Day14 HTML补充
- Android实现录屏直播(三)MediaProjection + VirtualDisplay + librtmp + MediaCodec实现视频编码并推流到rtmp服务器
- 004. 前端跨域资源请求: JSONP/CORS/反向代理
- 【HNOI2013】切糕
- trade war
- java 中多播、广播编程
- HDU4328 Cut the cake(动规:最大子矩形问题/悬线法)
- pycharm 直接删掉数据表之后,makemigration和migrate 之后,数据库中依然没有生成数据表的问题
- 大纲2.3 Internet
- [LeetCode] questions conclustion_Path in Tree
- EasingAnimation