博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode Remove Duplicates from Sorted Array
阅读量:6826 次
发布时间:2019-06-26

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

hot3.png

题目:

Given a sorted array, remove the duplicates in place such that each element appear only once and return the new length.

Do not allocate extra space for another array, you must do this in place with constant memory.

//主要是Do not allocate extra space for another array,需要复用一个数组的内存空间

For example,

Given input array nums = [1,1,2],

Your function should return length = 2, with the first two elements of nums being 1 and 2 respectively. It doesn't matter what you leave beyond the new length

package mainimport (	"fmt")func sort_array_len(array []int) int {	array_len := len(array)	if array_len < 1 {		return 0	}	length := 0	last_element := array[0]	for i := 0; i < array_len; i++ {		if array[i] != last_element && i != 0 {			length++			last_element = array[i]		}	}	return length + 1}func remove_duplicate_element(array []int) int {	array_len := len(array)	if array_len < 1 {		return 0	}	length := 0	last_element := array[0]	for i := 0; i < array_len; i++ {		if array[i] != last_element && i != 0 {			length++			last_element = array[i]			array[length] = array[i]		}	}	return length + 1}func main() {	test_array := []int{2, 3, 5, 5, 5, 6, 8, 9}	result_len := remove_duplicate_element(test_array)	fmt.Println(result_len)	fmt.Println(test_array[:result_len])}

输出结果: 

   6    [2 3 5 6 8 9]

 

转载于:https://my.oschina.net/yang1992/blog/817127

你可能感兴趣的文章
android读写assets目录下面的资源文件(文件夹)
查看>>
linux date 格式化时间和日期
查看>>
Java 复用类
查看>>
[CS] 来电处理流程
查看>>
我的友情链接
查看>>
cin.ignore与cin.getline的体验
查看>>
powershell常用命令
查看>>
我的友情链接
查看>>
linux 查看编码格式、用户及组状态
查看>>
squid FATAL: Received Segment Violation...dying.
查看>>
mem调优
查看>>
内核编译安装学习笔记
查看>>
做好数据备份 对你多重要
查看>>
Maven项目导出工程依赖JAR包
查看>>
tomcat修改时区
查看>>
dojo.declare,dojo.define,dojo.require解释
查看>>
浏览器的重绘与重排
查看>>
Web开发必知的八种隔离级别
查看>>
酷炫的显示主页面
查看>>
org.apache.catalina.startup.Catalina start之过程分析
查看>>