s*****a 发帖数: 310 | 1 在研究中需要分析一个算法的复杂度,其中要多次用到两个vector相加和相减。
用C的for循环的话,那复杂度是O(n). 但用GPU之类的并行运算方法,是不是也可以实
现复杂度O(1)?
同样,用Matlab来运算,似乎两个vector可以点对点一步实现相加减,似乎复杂度也是
O(1).
如果写论文分析算法复杂度的话,我到底是该用Q(1)还是Q(0).
似乎问题太简单,但是真的有点搞不清楚。希望大家能指点一下,非常感谢! |
c*******h 发帖数: 1096 | 2 数据在cpu和gpu之间来回的时间肯定不是O(1)
【在 s*****a 的大作中提到】 : 在研究中需要分析一个算法的复杂度,其中要多次用到两个vector相加和相减。 : 用C的for循环的话,那复杂度是O(n). 但用GPU之类的并行运算方法,是不是也可以实 : 现复杂度O(1)? : 同样,用Matlab来运算,似乎两个vector可以点对点一步实现相加减,似乎复杂度也是 : O(1). : 如果写论文分析算法复杂度的话,我到底是该用Q(1)还是Q(0). : 似乎问题太简单,但是真的有点搞不清楚。希望大家能指点一下,非常感谢!
|
l********a 发帖数: 1154 | 3 matlab对于vector和matrix的操作,只是提供给用户方便操作,简化编程的功能吧,
其底层是不是也是一个一个加的啊 |
w********u 发帖数: 71 | 4 算法复杂度分析要基于你的计算模型。串行和并行是两种不同的假设。 |