首页 > 试题广场 >

魔术索引I

[编程题]魔术索引I
  • 热度指数:10519 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解

已知数组A[0..n-1]和数组大小n(升序数组,元素值各不相同),若存在A[i]=i则称该数组有魔术索引,请判断该数组是否存在魔术索引,返回值为bool,要求复杂度优于o(n)。

测试样例:
[1,2,3,4,5]
返回:false
头像 cl、
发表于 2020-10-26 14:25:33
因为数组下标是从0开始,且是升序数组,元素值各不相同要满足下标值等于数组值那么数组第一位必然是从0开始.也就是A[0]==0时满足条件,所代码就一行:import java.util.*; public class MagicIndex { public boolean findMagicInd 展开全文
头像 胖胖不吹牛
发表于 2020-03-14 14:22:39
JAVA重现二分法查找。重点在于find方法中索引的添加以及更新的方法。 import java.util.*; public class MagicIndex { public boolean findMagicIndex(int[] A, int n) { // wri 展开全文