【发布时间】:2014-01-08 07:25:56
【问题描述】:
我们得到了一个递增排序的多维数组,例如:
int[][] mat = {{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,16}};
如何使用二分法查找特定数字?假设我正在寻找 3。
【问题讨论】:
-
先向我们展示您的尝试
-
我尝试使用 NXM 计算数组中元素的数量,然后尝试在数组上找到正确的位置并使用它进行排序,但它无法正常工作。跨度>
-
你能澄清你的“排序多维数组”的约束吗?例如,第 2 行的第一个元素是否需要大于第 2 行的最后一个元素,如您的示例代码中那样,还是仅被限制为 > 第 1 行的第一个元素? (换句话说,这真的是一个被分成几部分的排序列表,还是对数组的排序约束仅仅是必须对每一行和每一列进行排序?)
标签: java algorithm binary-search