【问题标题】:Generating a bitvector in scheme在方案中生成位向量
【发布时间】:2014-04-09 19:52:28
【问题描述】:

我正在尝试实现一个拼写检查器,它采用散列函数和字典,然后将单词的散列值映射到位向量。更具体地说,我正在尝试编写一个名为 gen-checker 的函数,该函数将哈希函数列表和单词字典作为输入,并返回一个拼写检查器。拼写检查器必须为字典的输入生成一个位向量表示,其中包含 #t 或 #f 指示单词的正确或错误拼写。

我已经定义了 has 函数并有一个字典可以使用,但我似乎无法设置位向量

我已尝试在此处实现 (make-bitvector 8 #f):

http://www.gnu.org/software/guile/manual/html_node/Bit-Vectors.html

但由于某种原因,drracket 无法识别它。我究竟做错了什么?如何实现位向量表示?

【问题讨论】:

  • docs.racket-lang.org/data/bit-vector.html 您需要告诉编译器您正在使用带有 (require data/bit-vector) 的包
  • 好的,所以我想通了。您必须使用 make-bit-vector 而不是 make-bitvector。我现在应该没事

标签: vector scheme racket spell-checking hash-function


【解决方案1】:

这个答案看起来像是在开玩笑,但事实并非如此:

(define make-bitvector make-vector)
(define bitvector-ref  vector-ref)
;; ...

一切正常后,才需要通过位打包来优化存储。

【讨论】:

    猜你喜欢
    • 2012-11-19
    • 1970-01-01
    • 2020-02-23
    • 2016-11-15
    • 2011-01-21
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    相关资源
    最近更新 更多