我遇到一个难题:
有两个阵列 A 跟 B
A 比较小,B 超级大
然后要在 A 里面找与 B 共有的片段 来拆解 B
例如这样:
A: AA11BB11CC11DD112A2B2C2D
B: B11CA112DGCDD............
拆解结果:
B11C
A11
2D
G
C
DD
用暴力法很好写,
问题是如果 A 跟 B 稍微大一点,
我的 5700G 会直接喘到死....
就算想办法切成 4 个 Thread 还是没用 QQ
A大概 2 KBytes
B大概 20 KBytes ~ 20 MBytes
程式是 VB.NET/C#,
这状况一定得改用 C 跑吗?
有没有算法可解的?
还是得用GPU?(没学过CUDA,哭啊)