当前位置:网站首页>LeetCode #26.删除有序数组中的重复项
LeetCode #26.删除有序数组中的重复项
2022-07-29 05:24:00 【张楚明ZCM】
题目截图
注意:题目要求不要占用额外空间,不许在原地修改输入数组。
方法:双指针法
思路:对数组中的元素相互比较,如果发现有重复的就删除。但这种方法在一般适用于新建一个新的空数组,把每个不重复的元素存入其中。如果直接在原数组修改,可能出现误操作情况。不如反过来思考。利用两个游标指示,一个游标负责记录修改,另一个用来对比。对比游标发现前后数值不同则用记录游标记录。这样可以保证新数组不会有重复的选项。返回记录的数值。
class Solution:
def removeDuplicates(self, nums: List[int]) -> int:
if not nums:
return 0
n = len(nums)
i = 1
j = 1
while j < n:
if nums[j] != nums[j - 1]:
nums[i] = nums[j]
i += 1
j += 1
return i
if __name__ == "__main__":
a = Solution()
nums = [1, 1, 2]
print(a.removeDuplicates(nums))
边栏推荐
- LeetCode #19.删除链表的倒数第N个结点
- 2022 spring recruit - Shanghai an road FPGA post Manager (and Lexin SOC interview)
- Reading papers on false news detection (5): a semi supervised learning method for fake news detection in social media
- clickhouse 导入CSV失败 不报错但是无数据
- HR must ask questions - how to fight with HR (collected from FPGA Explorer)
- LoRa开启物联网新时代-ASR6500S、ASR6501/6502、ASR6505、ASR6601
- NFC双向通讯13.56MHZ非接触式阅读器芯片--Si512替代PN512
- IDEA安装scala
- Hal library learning notes - 8 use of serial communication
- 基于51单片机的四路抢答器仿真
猜你喜欢
【软件工程之美 - 专栏笔记】17 | 需求分析到底要分析什么?怎么分析?
【软件工程之美 - 专栏笔记】22 | 如何为项目做好技术选型?
ArduinoIDE + STM32Link烧录调试
【软件工程之美 - 专栏笔记】25 | 有哪些方法可以提高开发效率?
Open source based on STM32: MHD Bluetooth speaker (including source code +pcb)
充电桩充电技术新能源充电桩开发
LeetCode #876.链表的中间结点
Zero basics FPGA (5): counter of sequential logic circuit design (with introduction to breathing lamp experiment and simple combinational logic design)
基于51单片机的直流电机调速系统(L298的使用)
JUC concurrent knowledge points
随机推荐
基于AD9850的多功能信号发生器
FT232替代GP232RL USB-RS232转换器芯片国产化应用
STM32 MDK(Keil5) Contents mismatch错误总结
从头安装MYSQL(MYSQL安装文档-解压版)
CS4344国产替代DP4344 192K 双通道 24 位 DA 转换器
智能货架安全监测系统
基于wifi的温度采集与控制系统
2.4G频段的无线收发芯片 SI24R1 问题汇总解答
寒假集训总结 (1.23~1.28) [第一梯队]
LeetCode #344.反转字符串
Si12T和Si14T低功耗电容触摸芯片
充电桩充电技术新能源充电桩开发
NoClassDefFoundError 处理
基于51单片机的DAC0832波形发生器
基于F407ZGT6的WS2812B彩灯驱动
LeetCode #167.两数之和 II - 输入有序数组
Huawei cloud 14 day Hongmeng device development -day5 drive subsystem development
Based on stc51: schematic diagram and source code of four axis flight control open source project (entry-level DIY)
循环链表和双向链表
Joiner.on和stream().map联合使用技巧