有效地将DNA碱基对数据存储在RAM中

Efficiently storing DNA base-pair data in RAM?

本文关键字:存储 RAM 数据 DNA 有效地      更新时间:2023-10-16

与这个问题非常相关:存储大DNA序列的最有效方法?而这个:宣布DNA 的新数据类型

我想找到一种方法来有效地存储长字符集ACTG,而不会为每个值浪费整个字节,因为它只需要2个比特。然而,我在回复中没有看到任何关于如何用C++、Java或任何语言存储2位数据的描述,尽管我认为C++应该是理想的语言

所以我的问题是,正确创建一个方便使用的2位数据类型的语法是什么?我认为需要制作某种结构来填充字节大小(lol)的数据块,但我真的不确定。

我很想知道这样的事情在其他语言中是否也可行,比如Javascript或Perl,但主要是如何在C++中实现。

示例代码将不胜感激,谢谢。

我建议您将数据编码在std::bitset中,并将位集存储在std::vector中。你可以只在比特集中编码一对DNA,并在载体中的每个元素浪费四个比特,或者你可以在每个比特集中编码两对DNA,然后你就有了完美的存储。