假设我们有一个不同值的列表,并且我们要以非降序删除每个数字。我们必须按删除顺序找到数字索引。

因此,如果输入类似于nums = [4、6、2、5、3、1],那么当我们删除1时,输出将为[5、2、3、0、1、0],因此数组为[ 4,6,2,5,3],然后删除2,数组是[4,6,5,3],然后删除3我们得到[4,6,5],然后删除4我们得到[6,5] ,删除5,[6],最后删除6。

范例(Python)

让我们看下面的实现以更好地理解-class Solution:

def solve(self, nums):

return solve(nums)

def solve(nums):

def my_sort(inds):

if len(inds) <= 1:

return inds

sorted_inds = []

mid = len(inds) // 2

left, right = my_sort(inds[:mid]), my_sort(inds[mid:])

i = j = 0

while i

if nums[left[i]]

sorted_inds.append(left[i])

i += 1

else:

sorted_inds.append(right[j])

larger[right[j]] += len(left) - i

j += 1

sorted_inds.extend(left[i:])

sorted_inds.extend(right[j:])

return sorted_inds

larger = [0] * len(nums)

my_sort(range(len(nums)))

num_larger_pairs = sorted(zip(nums, larger))

return [e[1] for e in num_larger_pairs]

ob = Solution()

nums = [4, 6, 2, 5, 3, 1]

print(ob.solve(nums))

输入值[4, 6, 2, 5, 3, 1]

输出结果[5, 2, 3, 0, 1, 0]

python将索引升序_程序在Python中按升序删除元素后获取列表的索引相关推荐

  1. 编程软件python是什么意思_程序员Python编程必备5大工具,你用过几个?

    Python是编程入门不错的选择,现在也有不少的程序员业余时间会研究这门编程语言. 学习Python有时候没有第一时间找到好工具,会吃不少的苦头.毕竟好的工具能将工作效率多倍速提升. 下面W3Csch ...

  2. vue获取列表中的数量_vue.js中列表里面的子元素怎么获取列表的索引index值

    <li class="posiRela counItem page-infinite-listitem clearfix" v-for="(item, index) ...

  3. 二、python基础语法篇(黑马程序猿-python学习记录)

    黑马程序猿的python学习视频:https://www.bilibili.com/video/BV1qW4y1a7fU/ ====================================== ...

  4. Python入门--列表的查询操作--获取列表知道那个元素的索引、获取列表中的单个元素、获取列表中的多个元素

    #列表的查询操作 #获取列表中指定元素的索引 #index()-->如果列表中存在N个相同的元素,只返回相同元素中的第一个索引 # -->如果查询的元素在列表中不存在,则会抛出Valuee ...

  5. 小程序开发--- 1. 获取数组中某个字段的值或获取列表索引

    最近开始自己琢磨开发微信小程序,遇到些问题,现在做一下总结. 今天有遇到一个需要获取到列表中某一项值,并在其他地方调用的问题.其实思路和获取列表索引的道理一样.如果你还不知道如何获取列表的索引,那么现 ...

  6. 隐藏添加删除程序中的程序在控制面板中的“添加/删除程序”项

    隐藏添加删除程序中的程序在控制面板中的"添加/删除程序"项是我们要卸载程序一个程序最彻底的地方.但很多时候为了防止自己安装的程序不被别人卸载,我们希望能够在"添加/删除程 ...

  7. python的执行过程_在交互式环境中执行Python程序过程详解

    前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...

  8. python点阵显示数字_程序点滴001_Python模拟点阵数字

    尝试过很多编程语言,写过不少程序(当然,基本上都是些自娱自乐或给自己用的工具类的小玩意儿),逐渐认识到编写程序是一个不断完善.不断优化的过程--编程首先要有一个想法(目标),围绕这个目标形成最基本的功 ...

  9. 如何用python写串口通信软件_如何用python写个串口通信的程序?

    展开全部 打开串口后启动一个线程来监听串口数据的进入,有数据时,就做数据的处理. 用python写串口通信e68a84e8a2ad32313133353236313431303231363533313 ...

最新文章

  1. npm : 无法加载文件 D:\...\nodejs\npm.ps1,因为在此系统上禁止运行脚本
  2. excel图表交互联动_如何使用高大上的多级联动交互式图表来分析人员结构?
  3. 基础回顾(Map、==/equals()/hashcode())
  4. pytorch torchvision.transforms.CenterCrop
  5. 计算机基础说课稿十分钟,关于《计算机应用基础》的说课稿一、教材分析(说教材):.pdf...
  6. C++ 设计模式 —— 策略模式(Strategy)
  7. c语言计算函数零点个数,遗传算法-求函数零点-C语言代码.doc
  8. mybatis(动态sql、结果集处理、分页、特殊字符处理)
  9. 常见Android智能手机通信录导入方法
  10. 根据后台给的时区与时间戳转换时区与时间
  11. java打卡返现项目,激励打卡APP你能够返现多少,其中的猫腻你有了解多少
  12. BoundsChecker的用法
  13. 项立刚:FDD牌照发放 难改行业大格局
  14. Mysql日期的加减法_mysql日期加减
  15. el-upload上传文件
  16. 腾讯技术解读|CDG—金融科技和腾讯广告AMS的神秘武器
  17. iOS——6种系统手势操作
  18. 哥德巴赫猜想计算机验证进展,哥德巴赫猜想的最新进展,不知道下文证明的是否正确,求验证...
  19. (2014/7/16—28)当不同说话人讲相…
  20. NVM 安装node.js后没有npm

热门文章

  1. 5图片展示_跃进小型宣传车价格 图片 配置
  2. java opengl_java基于OpenGL ES实现渲染实例
  3. NLP:以周杰伦的《Mojito》歌词为例字符串切分之清除一段由列表组成的字符串文本中的所有杂乱符号
  4. HighNewTech:2019.08.08鲲鹏开发入门暨 2019华为云鲲鹏开发者大赛参赛攻略
  5. DL之ShuffleNetV2:ShuffleNetV2算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  6. AI英特尔杯公开课:2019.06.27在线直播《研究生人工智能创新大赛—AI赋能,创新引领》课堂笔记和感悟(二)
  7. TF之DD:利用Inception模型+GD算法生成更高质量的Deep Dream高质量图片
  8. Web应用开发技术-CSS
  9. kafka和flume进行整合的日志采集的confi文件编写
  10. CentOS7安装xfce桌面环境