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

Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix

  • Leetcode 3567. Minimum Absolute Difference in Sliding Submatrix
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3567. Minimum Absolute Difference in Sliding Submatrix

1. 解题思路

这一题想了一下,没想到啥好的思路,就是暴力直接求解了一下,直接一个三重循环强行求取了一下答案。

唯一可以谈得上优化的就是在滑动过程中通过控制有序数列的方式来优化临近值的求解。

2. 代码实现

给出python代码实现如下:

class Solution:def minAbsDiff(self, grid: List[List[int]], k: int) -> List[List[int]]:n, m = len(grid), len(grid[0])def get_min_diff(nums):ans = math.infpre = nums[0]for i in range(1, k*k):if nums[i] == pre:continueans = min(nums[i] - pre, ans)pre = nums[i]return ans if ans != math.inf else 0ans = [[0 for _ in range(m-k+1)] for _ in range(n-k+1)]for i in range(n-k+1):nums = sorted([grid[i+t][j] for t in range(k) for j in range(k)])ans[i][0] = get_min_diff(nums)for j in range(m-k):for t in range(k):nums.pop(bisect.bisect_left(nums, grid[i+t][j]))bisect.insort(nums, grid[i+t][j+k])ans[i][j+1] = get_min_diff(nums)return ans

提交代码评测得到:耗时46ms,占用内存18MB。

相关文章:

  • 设备驱动与文件系统:01 I/O与显示器
  • java swing 晃动鼠标改变背景颜色
  • Windows如何定制键盘按键
  • npm install命令都做了哪些事情
  • 基于千帆大模型的AI体检报告解读系统实战:使用OSS与PDFBox实现PDF内容识别
  • UE5.4.4+Rider2024.3.7开发环境配置
  • 设计模式——享元设计模式(结构型)
  • Tomcat 线程模型详解性能调优
  • 如何安装ojdbc6-12.1.0.1与je-5.0.58的mvn构建依赖jar包?
  • 解决Ubuntu20.04上Qt串口通信 QSerialPort 打开失败的问题
  • JMeter 直连数据库
  • Selenium的底层原理
  • 724.寻找数组的中心下标前缀和
  • 《Python基础》第2期:环境搭建
  • 某航后缀混淆逆向与顶像风控分析
  • 循环流化床锅炉关键技术设计与优化路径
  • 【第四十七周】HippoRAG 2 复现与分析(一):环境部署与代码分析
  • 医疗数理范式化:从范式迁移到认知革命的深度解析
  • 怎样在PyQt5中使用信号与槽机制?
  • 开始使用 Elastic AI Assistant for Observability 和 Amazon Bedrock
  • inititle 网站建设/手机优化大师
  • 长春网站建设论坛/鸣蝉智能建站
  • 潍坊网站做的好的公司/如何做市场调研和分析
  • 网站建设报价单模板/网络赚钱推广
  • 工程项目信息查询平台/网站推广优化流程
  • 阿里云服务器可以做网站/seo引擎优化