Tag: 哈希

什么是最安全的方式来遍历Perl哈希键?

如果我有一堆(键,值)对的Perl哈希,迭代所有键的首选方法是什么? 我听说each可能有某种意想不到的副作用。 那么,这是真的,是以下两种方法中最好的一种,还是有更好的办法? # Method 1 while (my ($key, $value) = each(%hash)) { # Something } # Method 2 foreach my $key (keys(%hash)) { # Something }

MD5哈希值如何不可逆?

我一直想知道的一个概念是使用encryption散列函数和值。 我明白,这些函数可以生成一个独特的,几乎不可能扭转的哈希值,但这是我一直想知道的: 如果在我的服务器上,我在PHP中生成: md5("stackoverflow.com") = "d0cc85b26f2ceb8714b978e07def4f6e" 当你通过MD5函数运行相同的string时,你的PHP安装会得到相同的结果。 一个过程正在被用来产生一些价值,从一些初始值。 这是否意味着有一些方法来解构发生的事情并颠倒散列值? 这些function是什么使得产生的string不可能追溯?

我如何比较两个哈希?

我正在尝试使用以下代码比较两个Ruby哈希: #!/usr/bin/env ruby require "yaml" require "active_support" file1 = YAML::load(File.open('./en_20110207.yml')) file2 = YAML::load(File.open('./locales/en.yml')) arr = [] file1.select { |k,v| file2.select { |k2, v2| arr << "#{v2}" if "#{v}" != "#{v2}" } } puts arr 屏幕上的输出是来自file2的完整文件。 我知道一个事实,即文件是不同的,但脚本似乎并没有拿起它。

如何用两个键(Key-Pair,Value)创build一个HashMap?

我有一个整数的二维数组。 我希望他们被放入一个HashMap。 但我想从基于数组索引的HashMap中访问元素。 就像是: 对于A [2] [5], map.get(2,5)返回与该键相关的值。 但是,我怎么用一对钥匙创build一个哈希映射? 或者一般来说,我可以通过使用get(key1,key2,… keyN)来访问元素的方式: Map<((key1, key2,..,keyN), Value) )。 编辑:发布这个问题3年后,我想添加更多一点 我碰到了NxN matrix另一种方法。 数组索引, i和j可以用下面的方式表示为一个单独的key : int key = i * N + j; //map.put(key, a[i][j]); // queue.add(key); 而且指数可以通过这种方式从key中撤回: int i = key / N; int j = key % N;

散列字典?

为了caching的目的,我需要从字典中的GET参数中生成一个caching键。 目前我正在使用sha1(repr(sorted(my_dict.items()))) ( sha1()是一个方便的方法,在内部使用hashlib),但我很好奇,如果有更好的方法。

两个不同的string可以生成相同的MD5哈希码吗?

对于我们的每个二进制资产,我们生成一个MD5散列。 这用于检查某个二进制资产是否已经在我们的应用程序中。 但有可能两个不同的二进制资产生成相同的MD5散列。 那么有可能两个不同的string生成相同的MD5哈希?

如何优雅地重命名ruby中的所有键?

我有一个Ruby哈希: ages = { "Bruce" => 32, "Clark" => 28 } 假设我有另一个散列的replace名称,是否有一个优雅的方式来重命名所有的键,以便我最终: ages = { "Bruce Wayne" => 32, "Clark Kent" => 28 }

如何添加到Ruby中现有的散列

关于在Ruby中添加一个key => value对到现有的已填充散列,我正在通过Apress的“Beginning Ruby”工作,刚刚完成了散列章节。 我试图find最简单的方法来实现与散列相同的结果,就像这样做与数组: x = [1, 2, 3, 4] x << 5 px

我怎样才能在Perl中结合散列?

将哈希合并到%hash1中的最佳方法是什么? 我总是知道%hash2和%hash1总是有唯一的键。 如果可能的话,我也更喜欢一行代码。 $hash1{'1'} = 'red'; $hash1{'2'} = 'blue'; $hash2{'3'} = 'green'; $hash2{'4'} = 'yellow';

非encryption用途最快的哈希值?

我基本上是准备把短语放在数据库中,他们可能是畸形的,所以我想存储它们的简短散列(我将只是比较它们是否存在,所以散列是理想的)。 我假设MD5在十万次以上的请求中相当慢,所以我想知道什么是最好的方法来散列短语,也许推出我自己的散列函数或使用hash('md4', '…'将更快结束? 我知道MySQL有MD5(),所以这将补充一点速度的查询结束,但也许还有一个更快的哈希函数在MySQL中,我不知道这将与PHP的工作..