LeeCode
KonHng
这个作者很懒,什么都没留下…
展开
-
C# LeetCode 算法题记录414 第三大的数-简单
题目要求: 给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。 示例 1: 输入: [3, 2, 1] 输出: 1 解释: 第三大的数是 1. 示例 2: 输入: [1, 2] 输出: 2 解释: 第三大的数不存在, 所以返回最大的数 2 . 示例 3: 输入: [2, 2, 3, 1] 输出: 1 解释: 注意,要求返回第三大的数,是指第三大且唯一出现的数。 存在两个值为2的数,它们都排第二。 代码如下: ```csharp publi原创 2020-09-10 14:09:49 · 141 阅读 · 0 评论 -
C# LeetCode 算法题记录766 托普利茨矩阵-简单
题目要求: 如果矩阵上每一条由左上到右下的对角线上的元素都相同,那么这个矩阵是 托普利茨矩阵 给定一个 M x N 的矩阵,当且仅当它是托普利茨矩阵时返回 True。 示例 1: 输入: matrix = [ [1,2,3,4], [5,1,2,3], [9,5,1,2] ] 输出: True 解释: 在上述矩阵中, 其对角线为: “[9]”, “[5, 5]”, “[1, 1, 1]”, “[2, 2, 2]”, “[3, 3]”, “[4]”。 各条对角线上的所有元素均相同, 因此答案是True。 示例原创 2020-09-09 08:42:52 · 189 阅读 · 0 评论 -
C# LeetCode 算法题记录709 转换成小写字母-简单
题目要求: 实现函数 ToLowerCase(),该函数接收一个字符串参数 str,并将该字符串中的大写字母转换成小写字母,之后返回新的字符串。 示例 1: 输入: “Hello” 输出: “hello” 示例 2: 输入: “here” 输出: “here” 示例 3: 输入: “LOVELY” 输出: “lovely” 代码如下: public class Solution { public string ToLowerCase(string str) { return str原创 2020-09-08 08:26:21 · 98 阅读 · 0 评论 -
C# LeetCode 算法题记录167 两数之和 II - 输入有序数组 简单
题目要求: 给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。 说明: 返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。 示例: 输入: numbers = [2, 7, 11, 15], target = 9 输出: [1,2] 解释: 2 与 7 之和等于目标数 9 。因此 index1 = 1原创 2020-09-07 16:43:09 · 90 阅读 · 0 评论 -
C# LeetCode 算法题记录136 只出现一次的数字-简单
题目要求: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 解决方案: 一、哈希集(HashSet) 哈希集有个重要特性,其是不包含任何重复元素的无序集合。所以,对于此题可谓是相当适用的,毕竟我们要求的值就是唯一的。 故当我们向哈希集添加重复元素时,如果添加失败,则移除当原创 2020-09-04 10:16:44 · 187 阅读 · 0 评论 -
C# LeetCode 算法题记录13 罗马数字转整数-简单
题目要求: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V原创 2020-09-03 14:32:49 · 94 阅读 · 0 评论 -
C# LeetCode 算法题记录9 回文数-简单
题目要求: 判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 输入: 121 输出: true 示例 2: 输入: -121 输出: false 解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。 示例 3: 输入: 10 输出: false 解释: 从右向左读, 为 01 。因此它不是一个回文数。 进阶: 你能不将整数转为字符串来解决这个问题吗? 代码如下: public class Solution {原创 2020-09-02 14:41:25 · 125 阅读 · 0 评论 -
C# LeetCode 算法题记录1 两数之和-简单
题目要求: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 例 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 代码如下: public class Solution { public int[] TwoSum(int[] nums,原创 2020-09-02 09:20:28 · 94 阅读 · 0 评论 -
C# LeetCode 算法题记录7 整数反转-简单
C# LeeCode 算法题记录 整数反转-简单 题目要求:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: 假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。 代码如下: public class Solution {原创 2020-09-02 09:00:47 · 102 阅读 · 0 评论