美文网首页
根据一个数值寻找数组中最接近这个数值的对象

根据一个数值寻找数组中最接近这个数值的对象

作者: 小熊翻译App | 来源:发表于2017-09-07 14:28 被阅读0次

问题描述:根据地图的层级(mapView.zoomLevel),在数组内寻找到最接近这个层级的数值

- (NSInteger)getMinValueShowLevel:(NSArray *)showLevels mapZoomLevel:(CGFloat)mapZoomLevel{
    NSInteger suitValue = (int)mapZoomLevel;
    NSInteger diffLevel = 9999;
    for (NSNumber *showLevel in showLevels) {
        NSInteger diffLevelTmp = fabs(mapZoomLevel - [showLevel intValue]);
        if (diffLevelTmp < diffLevel) {
            diffLevel = diffLevelTmp;
            suitValue = [showLevel intValue];
        }
    }
    return suitValue;
}

注:代码中
showLevels:存有数值对象,如: showLevels = @[@(12), @(7), @(9)];
suitValue:找到的最合适的值
diffLevel:层级差
mapZoomLevel:参照层级,根据这个层级,找到数组中最接近这个数的值

相关文章

  • 根据一个数值寻找数组中最接近这个数值的对象

    问题描述:根据地图的层级(mapView.zoomLevel),在数组内寻找到最接近这个层级的数值

  • [redis 源码走读] 整数集合(inset)

    整数集合 整数集合,是一个有序的数值数组对象,存储的数值不允许重复。源码在 intset.c 数据结构 根据插入数...

  • 类型转化

    显示类型转换 数值/字符串/function/undefined/对象(null/数组) 数值 Number();...

  • swift 学习笔记之数组

    数组 格式var arr:[Int] = [数值1, 数值2, 数值3] 不可变数组 let == NSArr...

  • leetcode第12题:整数转罗马数字

    题目描述 考点 数学 数组 解题思路 数字转罗马数字:从大到小寻找最接近的数字,减去最接近的数字;继续向小的数值寻...

  • 数值数组

    [TOC] 一维数组及数组的基本知识 1、数组再使用前需要声明。声明格式为: 数组的赋值与一般变量的赋值格式相同。...

  • 27. Remove Element

    给一个数组和一个数值,去掉数组里面和这个数值一样的数组项,返回最后数组长度。 解析: 这道还是很简单的,就是循环一...

  • vue的指令

    ** v-model 双向数据绑定 ** v-for 数组,对象,数值 最后一...

  • numpy 排序

    numpy 没有直接取top-k的函数。需要手动实现。 argpartition这个操作指:根据一个数值x,把数组...

  • 递归函数深拷贝

    思路 当我们需要深拷贝一个数组,并且这个数组里面包含数值类型、对象类型,或者数组嵌套数组的时候,先写两个函数,一个...

网友评论

      本文标题:根据一个数值寻找数组中最接近这个数值的对象

      本文链接:https://www.haomeiwen.com/subject/bfjijxtx.html