LeetCode训练Day1

devtools/2024/11/29 16:07:14/

在这里插入图片描述

LeetCode26

给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。
考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:
更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums 的其余元素与 nums 的大小不重要。
返回 k 。

思路

因为为非严格递增排列数组,可以考虑判断后一个元素是否与同一个元素相同,如果相同,则去掉后一个元素,这样可以实现原地删除

代码

class Solution(object):def removeDuplicates(self, nums):""":type nums: List[int]:rtype: int"""if not nums:return 0i=0for i in range(len(nums)-1):if nums[i]==nums[i+1]:del nums[i+1]return len(nums)

LeetCode283

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
请注意 ,必须在不复制数组的情况下原地对数组进行操作。

思路

代码

class Solution(object):def moveZeroes(self, nums):""":type nums: List[int]:rtype: None Do not return anything, modify nums in-place instead."""left=0for right in range (len(nums)):if nums[right]!=0:nums[left],nums[right]=nums[right],nums[left]left +=1# print(right)return nums

LeetCode 485

给定一个二进制数组 nums , 计算其中最大连续 1 的个数。

思路

代码

class Solution(object):def findMaxConsecutiveOnes(self, nums):""":type nums: List[int]:rtype: int"""count=0totalcount=0for num in nums:if num==1:count=count+1else:count=0if count>totalcount:totalcount=countreturn totalcount

LeetCode 27

思路

代码

class Solution(object):def removeElement(self, nums, val):""":type nums: List[int]:type val: int:rtype: int"""if nums is None or len(nums) ==0:return 0l,r = 0,len(nums)-1 #一开始,l指向最左边,R指向最右边while l < r:while l<r and nums[l] != val: l = l+1while l<r and nums[r] == val:r = r-1nums[l],nums[r] = nums[r],nums[l]return l if nums[l] == val else l+1

http://www.ppmy.cn/devtools/137961.html

相关文章

QT配置文件详解

TEMPLATElib TEMPLATE变量用于指定项目模板类型&#xff0c;其值可以是以下几种&#xff1a; app&#xff1a;建立一个应用程序的makefile&#xff0c;这是默认值。lib&#xff1a;建立一个库的makefile。vcapp&#xff1a;建立一个应用程序的Visual Studio项目文件。vclib&a…

shell编程5,字符串运算符

声明&#xff01; 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下&#xff0c;如涉及侵权马上删除文章&#xff0c;笔记只是方便各位师傅的学习和探讨&#xff0c;文章所提到的网站以及内容&#xff0c;只做学习交流&#xff0c;其他均与本人以及泷羽sec团队无关&#…

Python深度学习框架:PyTorch、Keras、Scikit-learn、TensorFlow如何使用?学会轻松玩转AI!

前言 我们先简单了解一下PyTorch、Keras、Scikit-learn和TensorFlow都是什么。 想象一下你要盖一座大房子。你需要砖头、水泥、工具等等&#xff0c;对吧&#xff1f;机器学习也是一样&#xff0c;需要一些工具来帮忙。PyTorch、Keras、Scikit-learn和TensorFlow就是四种不同的…

线程的生命周期

线程的生命周期描述了线程从创建到消亡的整个过程&#xff0c;以及在这个过程中线程所经历的不同状态。以下是线程生命周期的详细解释&#xff1a; 一、新建&#xff08;NEW&#xff09; 当使用new关键字创建一个线程对象时&#xff0c;线程进入新建状态。此时&#xff0c;线…

Flink 之 Window 机制详解(上):基础概念与分类

《Flink 之 Window 机制详解&#xff08;上&#xff09;&#xff1a;基础概念与分类》 一、引言 在当今大数据蓬勃发展的时代&#xff0c;Flink 作为一款卓越的分布式流处理和批处理框架&#xff0c;以其独特的架构和强大的功能在数据处理领域占据着重要地位。其底层基于流式…

SQL Server 中的游标:介绍、效率、使用场景及替代方法对比

在 SQL Server 中&#xff0c;游标&#xff08;Cursor&#xff09;是一种数据库对象&#xff0c;用于逐行处理查询结果集。虽然游标在某些场景下非常有用&#xff0c;但它们的性能往往不如集合操作&#xff08;set-based operations&#xff09;。本文将详细介绍游标的概念、使…

设计模式---单例模式

单例模式&#xff1a;确保一个类只有一个实例&#xff0c;并提供该实例的全局访问点, 本文介绍6中常用的实现方式 懒汉式-线程不安全 以下实现中&#xff0c;私有静态变量 uniqueInstance 被延迟实例化&#xff0c;这样做的好处是&#xff0c;如果没有用到该类&#xff0c;那么…

怀念食家巷平凉面点,重拾美好

在美食的长河中&#xff0c;总有一些味道能勾起我们内心深处最温暖的回忆。食家巷平凉面点&#xff0c;便是这样一种带着浓郁乡愁与美好记忆的传统美食。平凉&#xff0c;这座历史悠久的城市&#xff0c;孕育出了独具特色的面点文化。食家巷的平凉面点白饼、烤馍&#xff0c;传…