Algorithm

从排序数组中删除重复项
 
 

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。

不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。

示例 1:

给定数组 nums = [1,1,2], 

函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 

你不需要考虑数组中超出新长度后面的元素。

示例 2:

给定 nums = [0,0,1,1,1,2,2,3,3,4],

函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。

你不需要考虑数组中超出新长度后面的元素。

说明:

为什么返回数值是整数,但输出的答案是数组呢?

请注意,输入数组是以“引用”方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。

你可以想象内部操作如下:

// nums 是以“引用”方式传递的。也就是说,不对实参做任何拷贝
int len = removeDuplicates(nums); // 在函数里修改输入数组对于调用者是可见的。
// 根据你的函数返回的长度, 它会打印出数组中该长度范围内的所有元素。
for (int i = 0; i < len; i++) {
    print(nums[i]);
} 解答:
class Solution {
public int removeDuplicates(int[] nums) {
if (nums == null || nums.length == 0) {
return 0;
}
int back = 0;
for (int front = 1; front < nums.length; front++) {
if (nums[back] != nums[front]) {
back++;
nums[back] = nums[front];
}
}
return back + 1;
} }

我想了下如果输入的数组,有没有{1,2,1,3,3,1}这种,非连续重复 的可能性。。虽然这种可能性存在,但是没有做出来。

Review

文章是Spring新建Restful webService 的介绍。https://spring.io/guides/gs/rest-service/#scratch

知识点:

1  Restful webService 和传统的mvc controller的区别是 Restful webService 关键在于http相应体的创建方式。Restful webService 不是视图的方式返回返回相应体而是直接 返回一个对象。对象是通过 json 的方式,写到http响应中。 我们不用手动的吧对象转化成 json格式是因为 MappingJackson2HttpMessageConverter  自动帮我们吧对象做了转化。

2 @EnableAutoConfiguration 告诉springboot 在根路径上寻找其他bean和配置文件。

3 @ComponentScan 告诉spring在根目录下寻找其他的配置和service,允许他们找到controller。

4@SpringBootApplication   包含3个注解: @ComponentScan  @EnableAutoConfiguration  @Configuration

Tip

java用freemaker 导出word。其中的关键点在于,制作模板。可以在ideal中制作ftl格式的模板,,在模板中 列表的每一张都有 <w:tr> 标签。。还有要注意的地方是${} 在模板中最好不要,留下 }单独在一行,这样会报错。参考链接:https://www.cnblogs.com/prader6/p/10562156.html

Share

mysql 查询优化实战:https://mp.weixin.qq.com/s?__biz=MzIwMTY0NDU3Nw==&mid=2651938458&idx=1&sn=249d03425789110e4921f53ef1b1952a&chksm=8d0f31d4ba78b8c22ec64e28fe39889f5ddc2db60a461e399a66d1725e2daf505be7505595d3&mpshare=1&scene=1&srcid=&key=32072adf498bfba6de7b82018eb4fd5ec76adbde5d4e7a541d05b171081a115793cd84dbc389582cfe5d4aa9b81c46e226e95176f7e8b62ea4b157ea0b648ea93c8ffec3a12018e57df6303d15b1af3b&ascene=1&uin=NjY5NzE2NzA5&devicetype=Windows+10&version=62060739&lang=zh_CN&pass_ticket=xsdm7lSVSaYFACsc%2B7V%2FId8J7ynIWL0j2bRj6V8WeiOnsc6IrVLmQwIW7nGp7rnl

总结:1 mysql 语句执行顺序是先执行括号外部的语句再执行括号内部的语句。

2  给要查询的列加索引可以极大的提升查询效率。

  • where条件字段上需要建立索引

  • 排序字段上需要建立索引

  • 分组字段上需要建立索引

  • Where条件上不要使用运算函数,以免索引失效

arts打卡 从排序数组中删除重复项的更多相关文章

  1. leetCode----day01---- 从排序数组中删除重复项

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

  2. 【LeetCode】从排序数组中删除重复项

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

  3. leetcode 从排序数组中删除重复项

    最近的学习是相当的无聊,并且很无趣,每天都浪费了很多时间,比如今天下午,就是搞一手成语接龙,我也是醉了- 并且我也不知道学什么了,所以决定刷题 虽然我是0算法基础,0逻辑能力的渣渣,但是尽力每天做一道 ...

  4. 026 Remove Duplicates from Sorted Array 从排序数组中删除重复项

    给定一个有序数组,你需要原地删除其中的重复内容,使每个元素只出现一次,并返回新的长度.不要另外定义一个数组,您必须通过用 O(1) 额外内存原地修改输入的数组来做到这一点.示例:给定数组: nums ...

  5. LeetCode:删除排序数组中的重复项||【80】

    LeetCode:删除排序数组中的重复项||[80] 题目描述 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原 ...

  6. Leetcode_删除排序数组中的重复项

    Leetcode  删除排序数组中的重复项 题目: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度. 不要使用 额外的数组空间,你必须在原地修改输入数 ...

  7. LeetCode 80. 删除排序数组中的重复项 II

    LeetCode 80. 删除排序数组中的重复项 II

  8. leecode刷题(1)-- 删除排序数组中的重复项

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

  9. 前端与算法 leetcode 26. 删除排序数组中的重复项

    目录 # 前端与算法 leetcode 26. 删除排序数组中的重复项 题目描述 概要 提示 解析 算法 # 前端与算法 leetcode 26. 删除排序数组中的重复项 题目描述 26. 删除排序数 ...

随机推荐

  1. window系统下如何查看so库的信息

    转载请标明出处,维权必究:https://www.cnblogs.com/tangZH/p/10458388.html  linux系统下能够直接用命令行查看so库的信息,但是window系统下咋办好 ...

  2. kodi18.1设置中文的方法

    默认情况下,新安装好的 Kodi 启动后是英文版的界面.但事实上,Kodi 包含多国语言 (包含简繁体中文版),我们可以设置改回简体中文界面.不过,很多人都遇到修改 Kodi 的语言为中文之后整个界面 ...

  3. javascript对象和数组之 深拷贝和浅拷贝

    管是在面试中还是我们的项目中经常会用到数组或者对象的深拷贝,下面我就自己总结的分享给大家. 首先要知道什么是深拷贝?什么是浅拷贝? 深拷贝:源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外 ...

  4. 音频处理EQ的基本概念

     我们通常所说的人声,歌声以及乐声都是一个复合音,也就是由声音的基音和一系列的泛音所构成的.这些泛音都是基音频率的倍数,物理学中叫分音,电声学中叫谐波,音乐中则把它们称做泛音.可以说,泛音对音色的特性 ...

  5. logisim元件清单

  6. .NET Core微服务之基于Consul实现服务治理(续)

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 上一篇发布之后,很多人点赞和评论,不胜惶恐,这一篇把上一篇没有弄到的东西补一下,也算是给各位前来询问的朋友的一些回复吧. 一.Consul ...

  7. KnockoutJS-绑定元素

    工作变更,又走回了WPF,一个来月没有接触web开发了,之前的KnockoutJS却不想放弃,继续进行知识的巩固,下个月开始重新走回web开发之路,还是得用回一些习惯了的工具.本次开始接触各绑定元素功 ...

  8. java~lombok里的Builder注解

    lombok注解在java进行编译时进行代码的构建,对于java对象的创建工作它可以更优雅,不需要写多余的重复的代码,这对于JAVA开发人员是很重要的,在出现lombok之后,对象的创建工作更提供Bu ...

  9. DotNetCore跨平台~EFCore2.0连接Mysql的烦恼-已解决

    回到目录 对于传统的nuget包,我们习惯上用官方或者大型组织的,因为它们比较考靠谱,但就在前两天.net core2.0发布后,我把efcore也升级到2.0了,mysql.EfCore也升级到支持 ...

  10. Unity资源打包学习笔记(二)、如何实现高效的unity AssetBundle热更新

    转载请标明出处:http://www.cnblogs.com/zblade/ 0x01 目的 在实际的游戏开发中,对于游戏都需要进行打补丁的操作,毕竟,测试是有限的,而bug是无法预估的.那么在手游中 ...