【发布时间】:2014-07-16 19:32:44
【问题描述】:
我正在编写一个函数,这就是我目前所拥有的:
template <typename T>
M2SA(T* A, size_t m, T* B, size_t n)
{
/* Require both arrays be nonempty */
if (m == 0 || n == 0)
{
throw ("Cannot find median of 2 sorted arrays if either is empty!";)
}
}
有什么方法可以优化条件if (m == 0 || n == 0) 使用位比较操作???
【问题讨论】:
-
过早的优化是万恶之源,[Donald Knuth]。
-
@40two:哇,你是怎么知道OP的名字的?!
-
如果条件检查是瓶颈,那么我敢打赌函数调用是一个更大的瓶颈......
-
这是一个棘手的问题,因为已排序数组和空数组的中位数显然是已排序数组的中位数。
-
为什么要使用位运算?为什么不考虑利用云的解决方案?
标签: c++ algorithm optimization bit-manipulation