博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
原地算法之从排序数组中删除重复项
阅读量:5253 次
发布时间:2019-06-14

本文共 414 字,大约阅读时间需要 1 分钟。

算法原地工作是指算法所需的辅助空间相对于输入数据量而言是常量。

问题 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。

 JAVA实现

public int removeDuplicates(int[] nums) {        /*首先应该判断是否为空数组*/        if(nums == null||nums.length ==0){            return 0;        }        int k=1;        for(int i=1;i

多一个额外空间用来记录一共有多少个不相同的元素即可,并且用对应的数组下标存放不重复的数组值

转载于:https://www.cnblogs.com/raychou1995/p/10225654.html

你可能感兴趣的文章
C# Dynamic通用反序列化Json类型并遍历属性比较
查看>>
前台freemark获取后台的值
查看>>
Spring-hibernate整合
查看>>
c++ map
查看>>
exit和return的区别
查看>>
Django 相关
查看>>
Python(软件目录结构规范)
查看>>
codeforces水题100道 第二十二题 Codeforces Beta Round #89 (Div. 2) A. String Task (strings)
查看>>
c++||template
查看>>
条件断点 符号断点
查看>>
.net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串------(转)...
查看>>
python的多行注释
查看>>
连接Oracle需要jar包和javadoc文档的下载
查看>>
UVA 10976 - Fractions Again?!
查看>>
Dreamweaver cc新版本css单行显示
查看>>
【android】安卓的权限提示及版本相关
查看>>
JavaScript可否多线程? 深入理解JavaScript定时机制
查看>>
Java基础教程——网络基础知识
查看>>
Kruskal基础最小生成树
查看>>
【hdu 1429】胜利大逃亡(续)
查看>>