分别输入一行字符 分别是同意一定?

请问:两个不同的字符串的hash计算值一定会不同吗? - 开源中国社区
当前访客身份:游客 [
当前位置:
任意两个不同的字符串产生的hash值一定会不同吗?
共有4个答案
<span class="a_vote_num" id="a_vote_num_
不一定,不过不同字符串的hash值相同的概率很低
<span class="a_vote_num" id="a_vote_num_
那可以用来做主键吗?
--- 共有 5 条评论 ---
但是如果你的数据库是分布式的话,主键你怎么设置?
(5年前)&nbsp&
: 嗯,业务上想想确实不应该用,确实占太多空间,排序时又优化不好
(5年前)&nbsp&
: MD5 和 SHA1 最大的问题就是占用的存储空间太大,不像整数简单直接
(5年前)&nbsp&
我感觉技术上还是可行的嘛
MD5的话,倒是瞬间生成任意大小的文件,不同内容,相同MD5值的
SHA-1的HASH的话,没见到有重复的
(5年前)&nbsp&
那肯定是不行的
(5年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
搜索引擎的爬虫如何判断你的url是否更新的?还有,爬虫所建立的网页数据库又是怎么判断某一个url是否存在?难道直接比较url?还是其它什么办法?
--- 共有 2 条评论 ---
这个问题说的有点儿不清楚,主要的意思还是怎么能够比较效率的比较两个字符串是不同的
(5年前)&nbsp&
url 哪里可以看出对应的页面是否更新啊
(5年前)&nbsp&
<span class="a_vote_num" id="a_vote_num_
#XWiki# 中就是用 某几个字段的 hashcode 值作为主键的。
--- 共有 1 条评论 ---
(5年前)&nbsp&
更多开发者职位上
有什么技术问题吗?
忆童的其它问题
类似的话题判断一个字符串是否是另一个字符串的一种翻转
问题:给出字符串s1和s2,判断s2是否是s1的旋转字符串,
请写出代码。旋转字符串:”waterbottle”是”erbottlewat”的旋转字符串。
解答:题目说我们使用一次isSubstring函数就可以判断s2是否是s1的旋转字符串,
如果从原始字符串s1和s2直接入手肯定不行,因为它们根本不存在子串关系。
如果不断地旋转字符,然后调用isSubstring,又需要调用多次的isSubstring。
而且通过旋转字符再判断,可以直接用等号判断,根本用不上isSubstring。
既然如此,我们就要考虑去改变原始字符串。要判断a串是否是b串的子串,
一般情况下都会有b串长度大于a串,长度相等的话就直接判断它们是不是相等的串了。
我们可以考虑把串s1变长,然后调用一次isSubstring判断s2是否是s1变长后的子串,
如果是,就得出s2是s1的旋转字符串。s1怎么变长呢?
无非就是s1+s1或是s1+s2, s2一定是s1+s2的子串,因此这样做没有任何意义。而s1+s1呢?
我们就上面的例子进行讨论:s1=waterbottle,s2=erbottlewat.
则:s1 + s1 = waterbottlewaterbottle
很容易可以发现,s1+s1其实是把s1中每个字符都旋转了一遍,而同时保持原字符不动。
比如waterbottle向右旋转2个字条应该是:terbottlewa,
但如果同时保持原字符不动,
我们得到的就是waterbottlewa,而terbottlewa一定是waterbottlewa的子串,
&因为waterbottlewa只是在terbottlewa的基础上再加上一条原字符不动的限制。
因此s1+s1将包含s1的所有旋转字符串,如果s2是s1+s1的子串,自然也就是s1的旋转字符串了。
Java版代码如下:
//判断str1是否是str2的字串
&&& public
static boolean isSubstring(String str1,String str2)
&&& boolean flag
&&& if(str1 ==
null || str2 == null)
&&& return
&&& int len =
str2.length()-str1.length();
&&& if(len &
&&& return
&&& for(int i =
0;i &=i++)
if(str1.equals(str2.substring(i,i+str1.length()-1)));
&&& flag =
&&& return
//判断str2是否是str1的一种翻转
&&& public
static boolean isRotation(String str1,String str2)
&&& boolean flag
&&& if(str1 ==
null || str2 == null)
&&& return
&&& String str =
str1+str1;
if(isSubstring(str2,str))
&&& flag =
&&& return
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
您的访问请求被拒绝 403 Forbidden - ITeye技术社区
您的访问请求被拒绝
亲爱的会员,您的IP地址所在网段被ITeye拒绝服务,这可能是以下两种情况导致:
一、您所在的网段内有网络爬虫大量抓取ITeye网页,为保证其他人流畅的访问ITeye,该网段被ITeye拒绝
二、您通过某个代理服务器访问ITeye网站,该代理服务器被网络爬虫利用,大量抓取ITeye网页
请您点击按钮解除封锁&&#xe621; 上传我的文档
&#xe602; 下载
&#xe60c; 收藏
该文档贡献者很忙,什么也没留下。
&#xe602; 下载此文档
正在努力加载中...
《数据结构与算法》课后习题答案
下载积分:1000
内容提示:2.3 课后习题解答
2.3.2 判断题
1.线性表的逻辑顺序与存储顺序总是一致的。(×)
2.顺序存储的线性表可以按序号随机存取。(√)
3.顺序表的插入和删除操作不需要付出很大的时间代价,因为每次操作平均只有近一半的元素需要移动。(×)
4.线性表中的元素可以是各种各样的,但同一线性表中的数据元素具有相同的特性,因此属于同一数据对象。(√)
5.在线性表的顺序存储结构中,逻辑上相邻的两个元素在物理位置上并不一定相邻。(×)
6.在线性表的链式存储结构中,逻辑上相邻的元素在物理位置上不一定相邻。(√)
7.线性表的链式存储结构优于顺序存储结构。(×)
8.在线性表的顺序存储结构中,插入和删除时移动元素的个数与该元素的位置有关。(√)
9.线性表的链式存储结构是用一组任意的存储单元来存储线性表中数据元素的。(√)
10.在单链表中,要取得某个元素,只要知道该元素的指针即可,因此,单链表是随机存取的存储结构。(×)
11.静态链表既有顺序存储的优点,又有动态链表的优点。所以它存取表中第i个元素的时间与i无关。(×)
12.线性表的特点是每个元素都有一个前驱和一个后继。(×)
2.3.3 算法设计题
1.设线性表存放在向量a[arrsize]的前elenum个分量中,且递增有序。试写一算法,将x 插入到线性表的适当位置上,以保持线性表的有序性,并且分
文档格式:DOC|
浏览次数:1075|
上传日期: 17:38:09|
文档星级:&#xe60b;&#xe60b;&#xe60b;&#xe60b;&#xe612;
该用户还上传了这些文档
《数据结构与算法》课后习题答案
官方公共微信不同字符串的md5有可能相同吗?_百度知道

我要回帖

更多关于 输入一行字符 分别 的文章

 

随机推荐