找到更快的算法

时间:2014-11-15 11:22:40

标签: c++ c visual-studio-2010 visual-c++

我找到创建两个函数的最佳选项时遇到了一些困难。

我有一个变量:

BYTE bPattern[256];

每个字节的值可以是0或1或2 现在,我需要创建一个函数,为这种模式中的每种可能情况提供ID(或签名)。

void fGetIDFromPattern(BYTE bInPattern[], DWORD *pdwOutID);

当然,我可以创建2个for循环并从头到尾检查所有情况,并与bInPattern进行比较,但每次都需要花费太多时间。
有没有办法更快更好地完成这项工作?

而且..我还需要第二个功能......

void fGetPatternFromID(DWORD dwInID, BYTE bOutPattern[]);

当然,我可以创建一个包含所有可能值的静态文件,而不是这种“动态”方法:

0 0 0 0 .. 0
1 0 0 0 .. 0
2 0 0 0 .. 0
0 1 0 0 .. 0
...
2 2 2 2 .. 2

0 个答案:

没有答案