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

Python | Leetcode Python题解之第315题计算右侧小于当前元素的个数

题目:

题解:

import numpy as np
from bisect import bisect_leftclass Solution:max_len =  10000c = []buckets = []def countSmaller(self, nums: List[int]) -> List[int]:self.c = [0 for _ in range(len(nums) + 5)]counts = [0 for _ in range(len(nums))]nums = self.discretization(nums)for i in range(len(nums) - 1, -1, -1):num = nums[i]counts[i] = self.query(num-1)self.updateC(num)return countsdef updateC(self, pos):while pos < len(self.c):self.c[pos] += 1pos += self.lowbit(pos)def lowbit(self, x):"""获取更新范围"""return x & (-x)def query(self, pos):"""查询前缀和"""val = 0while pos > 0:val += self.c[pos]pos -= self.lowbit(pos)return valdef getMappingList(self, nums):"""列表去重排序"""return list(sorted(set(nums)))def discretization(self, nums):"""将nums进行离散化变换"""mapping = self.getMappingList(nums)return [bisect_left(mapping, num) + 1 for num in nums]

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 08.02_111期_Linux_NAT技术
  • Binder、 AIDL 、IPC 大展神威
  • linux进程控制——进程等待——wait、waitpid
  • uniapp自定义网格布局用于选择金额、输入框焦点事件以及点击逻辑实战
  • 【面试题】C++:面向对象的三大特性?
  • Cocos Creator文档学习记录
  • Java二十三种设计模式-外观模式(9/23)
  • 示例:在ML.NET中应用Model Builder模型生成器构建图片分类模型
  • 定位Oracle表空间问题
  • 基于若依框架开发的Spring Boot+Vue的MES(生产制造执行系统)是一种专为中小型工厂设计的ERP(企业资源计划)系统
  • Nerd Fonts
  • 如果你感到焦虑、精神内耗,那就跑步去吧!
  • Spring Cloud全解析:注册中心之Eureka服务发现
  • 前端 HTML 概述
  • MATLAB在科研领域的重要性
  • Docker下部署自己的LNMP工作环境
  • JavaScript DOM 10 - 滚动
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • PAT A1092
  • Spring Cloud中负载均衡器概览
  • V4L2视频输入框架概述
  • Vim 折腾记
  • Vue实战(四)登录/注册页的实现
  • web标准化(下)
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 讲清楚之javascript作用域
  • 让你的分享飞起来——极光推出社会化分享组件
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ​VRRP 虚拟路由冗余协议(华为)
  • ​虚拟化系列介绍(十)
  • # 数仓建模:如何构建主题宽表模型?
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (+4)2.2UML建模图
  • (bean配置类的注解开发)学习Spring的第十三天
  • (C语言)二分查找 超详细
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (备份) esp32 GPIO
  • (十)Flink Table API 和 SQL 基本概念
  • (四)activit5.23.0修复跟踪高亮显示BUG
  • (译)2019年前端性能优化清单 — 下篇
  • (转)Linq学习笔记
  • (转载)深入super,看Python如何解决钻石继承难题
  • (轉貼) UML中文FAQ (OO) (UML)
  • *算法训练(leetcode)第三十九天 | 115. 不同的子序列、583. 两个字符串的删除操作、72. 编辑距离
  • .[hudsonL@cock.li].mkp勒索加密数据库完美恢复---惜分飞
  • .libPaths()设置包加载目录
  • .net core Swagger 过滤部分Api
  • .NET的数据绑定
  • .net和jar包windows服务部署
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复
  • .sys文件乱码_python vscode输出乱码
  • @基于大模型的旅游路线推荐方案
  • [《百万宝贝》观后]To be or not to be?