diff --git a/src/main.cpp b/src/main.cpp index 5094479..8ce052c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -6,17 +6,17 @@ namespace py = pybind11; #endif +static const std::unordered_map complement = { //这里使用查表的方式大大提高CPU速度,因为if分支CPU不容易命中缓存,需要使用查表加速 + {'A', 'T'}, {'a', 'T'}, + {'T', 'A'}, {'t', 'A'}, + {'C', 'G'}, {'c', 'G'}, + {'G', 'C'}, {'g', 'C'} +}; //注意,这个函数会被并行执行,请只访问begin<=i complement = { //这里使用查表的方式大大提高CPU速度,因为if分支CPU不容易命中缓存,需要使用查表加速 - {'A', 'T'}, {'a', 'T'}, - {'T', 'A'}, {'t', 'A'}, - {'C', 'G'}, {'c', 'G'}, - {'G', 'C'}, {'g', 'C'} - }; std::reverse(begin, end); //翻转DNA序列