数据结构算法设计题?
试编写一个N个不相同整数的升序列,对于任一给定的整数,求与上述数列中数值最接近的整数的下标索引算法...
试编写一个 N 个不相同整数的升序列,对于任一给定的整数,求与上述 数列中数值最接近的整数的下标索引算法
展开
1个回答
展开全部
对于有序序列的查找,第一时间想到的就应该是二分查找,你这里的需求就是一个二分查找的变异。
public static int Method(int[] nums, int low, int high, int target)
{
while (low <= high)
{
int middle = (low + high) / 2;
if (target == nums[middle])
{
return middle;
}
else if (target > nums[middle])
{
low = middle + 1;
}
else if (target < nums[middle])
{
high = middle - 1;
}
}
if(math.Abs(nums[low ]-target )<=math.Abs(nums[high]-target ))
return low ;
else
return high;
}
public static int Method(int[] nums, int low, int high, int target)
{
while (low <= high)
{
int middle = (low + high) / 2;
if (target == nums[middle])
{
return middle;
}
else if (target > nums[middle])
{
low = middle + 1;
}
else if (target < nums[middle])
{
high = middle - 1;
}
}
if(math.Abs(nums[low ]-target )<=math.Abs(nums[high]-target ))
return low ;
else
return high;
}
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询