leetcode10道题目

简介: 通过这篇你对leetcode就不会在畏惧了



26. 删除有序数组中的重复项

先理解一下题目:请你** 原地** 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致

解题思路:这里可以采用双指针的做法,一个为fast,一个为slow。我们都初始化为0.我们知道,数组是有序的,那么重复的数据是相邻的,比较较 fast和low位置的元素是否相等。刚开始,两个都指向第一个元素,肯定相等,直接让fast++。

遍历循环:

如果相等,fast 后移 1 位。

如果不相等,将++slow的值改为fast,fast 后移 1 位。直到遍历结束。最后在把numsSize置为slow+1.

下面,上手代码:

提交运行:

69. x 的平方根

这道题刚开始一看是觉得应该会挺简单的。不过却有一个坑在这个地方:由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。所以对于一些算术平方根不是整数的话,如8 的算术平方根是 2.82842…, 由于返回类型是整数,小数部分将被舍去。所以,所以我们要特殊的处理一下,下面一起来看看我们怎么写的把:

8行代码解决,不过要注意:为了防止数字溢出的情况,target要定义为long类型。

提交运行:

287. 寻找重复数

解题思路:排完序之后判断相邻的数是否相等,相等即为重复的数,直接输出即可。比较简单

提交运行:

342. 4的幂

此题可以采用递归做法。这里提供一个非递归的做法:

提交运行:

414. 第三大的数

题目要求很简单,找出第三大的数。如果你没有看示例的话,很可能会直接排序之后输出第三个数。看看示例2和示例3的说明在做。

这可不是通过排序就能直接返回值了,我们可以定义一个计数器来计算第三大的数,等于3之时在输出。然后如果不是等于三的话,就输出最大的数即可。

下面,我们先来一个错误的示范:❌

代码的逻辑没有错,可以准确的输出结果,但是当你提交的时候你会发现:

为什么会这样?

很好理解,当其中一个是负数很小时,另一个是正数很大时,相减就超出了int类型的范围了。所以。在这里,我们为了避免这种情况的出现,直接去比较大小即可。

提交运行:

977. 有序数组的平方

给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。

解题思路:直接让原数组进行平方,然后在进行排序即可

提交运行:

1137. 第 N 个泰波那契数

泰波那契数…emm我想到的是斐波那契数,这些名字真有意思啊。找到规律之后并不难,采用迭代的做法即可。

提交运行:

1952. 三除数

直接去计算整数n的整除数是否等于3即可

提交运行:

2057. 值相等的最小索引

直接去遍历一遍数组即可

提交运行:

2235. 两整数相加

我觉得这才应该是leetcode的第一道题把。前面太难了点😥



相关文章
|
4月前
|
程序员 C语言
【C语言】LeetCode(力扣)上经典题目
【C语言】LeetCode(力扣)上经典题目
|
5月前
|
SQL Oracle 关系型数据库
CASE WHEN 语句的语法及示例,LeetCode 题目 “确认率” 练习
本文介绍了SQL中CASE语句的两种形式和语法,并通过LeetCode题目“确认率”的SQL查询示例展示了CASE语句在实际问题中的应用,解释了如何使用CASE语句计算特定条件的比率。
|
6月前
|
算法
LeetCode第12题目整数转罗马数字
该文章介绍了 LeetCode 第 12 题整数转罗马数字的解法,通过使用 TreeMap 按照整数从大到小排序,先使用大的罗马数字表示整数,再用小的,核心是先表示完大的罗马数字,想通此点该题较简单。
LeetCode第12题目整数转罗马数字
|
6月前
|
算法 Java
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
LeetCode经典算法题:矩阵中省份数量经典题目+三角形最大周长java多种解法详解
71 6
|
6月前
|
算法
LeetCode第13题目罗马数字转整数
该文章介绍了 LeetCode 第 13 题罗马数字转整数的解法,通过从大到小解析罗马数字,根据罗马数字的特点,按照从大到小的顺序匹配罗马数字和整数的关系,从而解决该问题,同时强调要注意观察题目考查的知识点特征。
|
8月前
|
C语言
详解Leetcode中关于malloc模拟开辟二维数组问题,涉及二维数组的题目所给函数中的各个参数的解读
详解Leetcode中关于malloc模拟开辟二维数组问题,涉及二维数组的题目所给函数中的各个参数的解读
54 1
|
8月前
|
算法
【经典LeetCode算法题目专栏分类】【第10期】排序问题、股票问题与TOP K问题:翻转对、买卖股票最佳时机、数组中第K个最大/最小元素
【经典LeetCode算法题目专栏分类】【第10期】排序问题、股票问题与TOP K问题:翻转对、买卖股票最佳时机、数组中第K个最大/最小元素
|
7月前
|
存储 算法
经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
经典的滑动窗口的题目 力扣 2799. 统计完全子数组的数目(面试题)
|
8月前
|
容器
【LeetCode刷题】栈和队列题目练习~
【LeetCode刷题】栈和队列题目练习~