Python求解排列中的逆序数个数实例


Posted in Python onMay 03, 2020

在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。

一个排列中逆序的总数就称为这个排列的逆序数。

一个排列中所有逆序总数叫做这个排列的逆序数。

也就是说,对于n个不同的元素,先规定各元素之间有一个标准次序(例如n个 不同的自然数,可规定从小到大为标准次序),于是在这n个元素的任一排列中,当某两个元素的先后次序与标准次序不同时,就说有1个逆序。

一个排列中所有逆序总数叫做这个排列的逆序数。

Python代码:

def inverse_number(string):
  'input a number which is string than,you will get the inverse number'
  ans = 0
  for i in range(len(string)):
    for j in range(i):
      if string[j] > string[i]:
        ans += 1
  return ans

print(inverse_number(input("Please input the number: ")))

补充知识:python输入一个整数,输出该数二进制表示中1的个数

我就废话不多说了,大家还是直接看代码吧!

# -*- coding:utf-8 -*-

class Solution:
  def NumberOf1(self, n):
    # write code here
    cnt = 0
    if n<0:
      n = n & 0xffffffff
    while n:
      cnt+=1
      n = (n-1) & n
    return cnt

通过按位与,巧妙的计算出二进制中"1"的个数。

以上这篇Python求解排列中的逆序数个数实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python语言技巧之三元运算符使用介绍
Mar 04 Python
python实现批量下载新浪博客的方法
Jun 15 Python
python通过文件头判断文件类型
Oct 30 Python
Python实现随机选择元素功能
Sep 14 Python
Win10下python3.5和python2.7环境变量配置教程
Sep 18 Python
python中的列表与元组的使用
Aug 08 Python
python+pygame实现坦克大战
Sep 10 Python
python sorted函数原理解析及练习
Feb 10 Python
python 瀑布线指标编写实例
Jun 03 Python
python绘制汉诺塔
Mar 01 Python
用Python提取PDF表格的方法
Apr 11 Python
python 如何执行控制台命令与操作剪切板
May 20 Python
Python3实现个位数字和十位数字对调, 其乘积不变
May 03 #Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
May 03 #Python
Python中实现输入一个整数的案例
May 03 #Python
python中使用input()函数获取用户输入值方式
May 03 #Python
Python run()函数和start()函数的比较和差别介绍
May 03 #Python
对python中arange()和linspace()的区别说明
May 03 #Python
python 等差数列末项计算方式
May 03 #Python
You might like
PHP删除HTMl标签的实现代码
2013/06/30 PHP
浅析php中三个等号(===)和两个等号(==)的区别
2013/08/06 PHP
php stream_get_meta_data返回值
2013/09/29 PHP
laravel 4安装及入门图文教程
2014/10/29 PHP
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
验证用户是否修改过页面的数据的实现方法
2008/09/26 Javascript
html5+javascript制作简易画板附图
2014/04/25 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
2014/09/26 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
2015/11/29 Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
2016/01/26 Javascript
JavaScript String(字符串)对象的简单实例(推荐)
2016/08/31 Javascript
利用Angularjs中模块ui-route管理状态的方法
2016/12/27 Javascript
Extjs让combobox写起来简洁又漂亮
2017/01/05 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
2017/01/13 Javascript
图解Javascript——作用域、作用域链、闭包
2017/03/21 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
超好用的jQuery分页插件jpaginate用法示例【附源码下载】
2018/12/06 jQuery
示例vue 的keep-alive缓存功能的实现
2018/12/13 Javascript
原生JS与CSS实现软件卸载对话框功能
2019/12/05 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python 循环while和for in简单实例
2016/08/16 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python利用小波分析进行特征提取的实例
2019/01/09 Python
在macOS上搭建python环境的实现方法
2019/08/13 Python
pytorch-RNN进行回归曲线预测方式
2020/01/14 Python
Python 统计位数为偶数的数字代码详解
2020/03/15 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
JD Sports瑞典:英国领先的运动时尚商店
2018/01/28 全球购物
军训拉歌口号
2014/06/13 职场文书
七一讲话心得体会
2014/09/05 职场文书
2015年小学中秋节活动总结
2015/03/23 职场文书
解析Java中的static关键字
2021/06/14 Java/Android
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python