python数据分析删除重复值(Python3实现从排序数组中删除重复项算法分析)
类别:脚本大全 浏览量:2453
时间:2021-10-21 08:44:49 python数据分析删除重复值
Python3实现从排序数组中删除重复项算法分析本文实例讲述了Python3实现从排序数组中删除重复项算法。分享给大家供大家参考,具体如下:
题目:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。
方案一:利用set()
快速剔除重复元素。 效率最高
|
# -*- coding:utf-8 -*- #! python3 def removeDuclicates(nums): nums[:] = sorted ( set (nums)) return len (nums) #测试 arr1 = [ 1 , 1 , 2 , 3 , 4 , 5 , 5 , 6 ] print (removeDuclicates(arr1)) |
运行结果:
6
方案二:双指针法。 效率次之
|
# -*- coding:utf-8 -*- #! python3 def removeDuplicates(nums): if not nums: return 0 j = 0 for i in range ( 1 , len (nums)): if nums[j] ! = nums[i]: j + = 1 nums[j] = nums[i] return j + 1 #测试 arr1 = [ 1 , 1 , 2 , 3 , 4 , 5 , 5 , 6 ] print (removeDuplicates(arr1)) |
运行结果:
6
方案三:利用remove()
方法。 效率次之
|
# -*- coding:utf-8 -*- #! python3 def removeDuplicates(nums): i = 0 while i < len (nums) - 1 : if nums[i] = = nums[i + 1 ]: nums.remove(nums[i]) else : i + = 1 return len (nums) #测试 arr1 = [ 1 , 1 , 2 , 3 , 4 , 5 , 5 , 6 ] print (removeDuplicates(arr1)) |
运行结果:
6
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/zhenghaitian/article/details/80871872
您可能感兴趣
- laravel算法(laravel批量生成假数据的方法)
- kmp算法怎么用c描述(详解小白之KMP算法及python实现)
- python 聚类找出同一类别的数据(Python实现简单层次聚类算法以及可视化)
- C#排序算法的比较
- python使用门算法加密文件(python实现可逆简单的加密算法)
- python字符串相似度匹配(Python实现字符串匹配的KMP算法)
- python 简单算法(python实现爬山算法的思路详解)
- 推荐算法第三方python(GitHub 热门:Python 算法大全,Star 超过 2 万)
- python选择排序最大最小同时排序(Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例)
- opencv怎么设置图像形态(OpenCV图像颜色反转算法详解)
- python实现层次遍历二叉树(Python实现的序列化和反序列化二叉树算法示例)
- python实现七个基本算法(python实现维吉尼亚算法)
- 学会php的路线图(PHP进阶学习之Geo的地图定位算法详解)
- python冒泡排序代码通俗理解(详解python算法之冒泡排序)
- react怎样实现响应式计算属性(深入浅析React中diff算法)
- python实现螺旋矩阵(Python3实现的旋转矩阵图像算法示例)
- 大众推出了第五代高尔夫GT(大众推出了第五代高尔夫GT)
- 换代在即,现在是抄底 7.5代 高尔夫的最佳时机吗(换代在即现在是抄底)
- 2020年大众7.5代高尔夫R终结特别版 最后的呐喊(2020年大众7.5代高尔夫R终结特别版)
- 七年前的这部剧有毒,全剧只有女主红到发紫,男主至今无人认识(七年前的这部剧有毒)
- 宋轶除了演过于曼丽,原来还演过一个青楼女子(宋轶除了演过于曼丽)
- 赵丽颖第一部当女主的戏,主角配角个个都是实力演员(赵丽颖第一部当女主的戏)
热门推荐
- docker怎么连接mysql(docker如何安装mysql)
- python爬虫爬取网页信息教程(python爬虫爬取微博评论案例详解)
- selenium怎么做集群(基于linux配置selenium环境并实现运行)
- opencv人脸识别实战(Python opencv实现人眼/人脸识别以及实时打码处理)
- html5input标签的默认属性(移动端HTML5 input常见问题小结)
- python 时间戳转化为格式(Python datetime和unix时间戳之间相互转换的讲解)
- 海外云服务器的优势是什么?(海外云服务器的优势是什么?)
- javascript登录转注册界面(JavaScript实现登录窗体)
- centos7离线安装mysql5.7(CentOS7.5 安装MySql的教程)
- 云主机与服务器有什么区别(云服务器是什么,云主机干什么用的?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9