在Fortran

时间:2016-07-19 03:45:09

标签: hash fortran hashcode

我正在尝试在我的Fortran代码中实现哈希表,并且我在Internet上找到了一个示例,但我无法弄清楚该值是如何分配给密钥的。

以下链接重定向到我想要实现的Fortran模块,并提供了有关如何使用代码的示例。

http://didgeridoo.une.edu.au/womwiki/doku.php?id=fortran:fortran

有人可以解释一下如何为这个示例程序中的键分配一个值吗?

1 个答案:

答案 0 :(得分:2)

该页面上的example program显示了如何使用它:

 call hash_it(idorig, 1, idnew, ipos, .false.)

! call hash_it(idorig, ivar, idnew, ipos, noadd)
!    idorig = ID to be recoded
!    ivar   = list no. (1, 2, ..., mlists)
!    idnew  = new ID
!    ipos   = position in hash table (rarely used)
!    noadd  = option: .false. adds new IDs
!                     .true.  does not add new IDs, just looks up position

idorig是要存储的(整数)值,idnew是(整数)键。然后,您可以在idnew中查找hlist

此实现只能存储整数,并使用值的哈希值作为键,即您无法自己指定键。如果这不符合您的需求,您可能还需要查看this questionFortran wiki的答案。