当前位置: 首页 > news >正文

算法18-----判断是否存在符合条件的元素【list】

1、题目:

给定一个整数数组,判断其中是否存在两个不同的下标i和j满足:| nums[i] - nums[j] | <= t 并且 | i - j | <= k

2、思路:

 

来自链接:http://bookshadow.com/weblog/2015/06/03/leetcode-contains-duplicate-iii/

3、代码:

    def containsNearbyAlmostDuplicate(self, nums, k, t):
        """
        :type nums: List[int]
        :type k: int
        :type t: int
        :rtype: bool
        """
        if k < 1 or t < 0:
            return False
        dic = collections.OrderedDict()
        for n in nums:
            key = n if not t else n // t
            for m in (dic.get(key - 1), dic.get(key), dic.get(key + 1)):
                if m is not None and abs(n - m) <= t:
                    return True
            if len(dic) == k:
                dic.popitem(False)
            print(key,n)
            dic[key] = n
        return False

 

转载于:https://www.cnblogs.com/Lee-yl/p/9044681.html

相关文章:

  • 邪恶的三位一体:机器学习、黑暗网络和网络犯罪
  • sql查询本周,本月数据
  • 生产环境Vmware新增硬盘扩展VG并新建文件系统
  • 通过7个函数解密区块链(附代码)
  • php面试题三
  • CISP-PTE注册信息安全专业人员渗透测试工程师知识体系大纲
  • kafa单机版环境搭建
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • 100 个网络基础知识普及(上)
  • shell脚本学习
  • 腾讯云工业互联网助力平台发布 推动制造业“数字化”蝶变
  • Shell编程
  • node 基础与 Event Loop
  • 下一个游戏新风口已来?小游戏或成2018年最大游戏黑马
  • NG
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • 2017届校招提前批面试回顾
  • canvas 绘制双线技巧
  • ES学习笔记(10)--ES6中的函数和数组补漏
  • IP路由与转发
  • JS 面试题总结
  • SpiderData 2019年2月25日 DApp数据排行榜
  • SpingCloudBus整合RabbitMQ
  • SQLServer之创建显式事务
  • Travix是如何部署应用程序到Kubernetes上的
  • Vue 动态创建 component
  • vue自定义指令实现v-tap插件
  • 阿里云前端周刊 - 第 26 期
  • 安装python包到指定虚拟环境
  • 扑朔迷离的属性和特性【彻底弄清】
  • 前嗅ForeSpider采集配置界面介绍
  • 说说动画卡顿的解决方案
  • 责任链模式的两种实现
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ionic入门之数据绑定显示-1
  • ​​​​​​​ubuntu16.04 fastreid训练过程
  • #Linux(权限管理)
  • #pragma data_seg 共享数据区(转)
  • (C语言)输入一个序列,判断是否为奇偶交叉数
  • (Java数据结构)ArrayList
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • .CSS-hover 的解释
  • .NET Core WebAPI中封装Swagger配置
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .NET Core跨平台微服务学习资源
  • .net redis定时_一场由fork引发的超时,让我们重新探讨了Redis的抖动问题
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .NET 中的轻量级线程安全
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .Net程序帮助文档制作
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • /etc/sudoers (root权限管理)