LeetCode
老周聊架构
微信公众号:老周聊架构
展开
-
LeetCode17-电话号码的字母组合
一、题目给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。二、示例输入:“23”输出:[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”].三、思路1、常用解法有回朔、暴力破解、dfs(深度优先)、bfs(广度优先)2、我这里使用队列...原创 2019-11-29 00:25:29 · 215 阅读 · 0 评论 -
LeetCode16-最接近的三数之和
一、题目给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。二、示例例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2).三、思路标签:排序...原创 2019-11-29 00:16:13 · 144 阅读 · 0 评论 -
LeetCode15-三数之和
一、题目给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。二、示例例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]三、思路标...原创 2019-11-25 23:26:24 · 156 阅读 · 0 评论 -
LeetCode14-最长公共前缀
一、题目编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。二、示例示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。三、代码package com.leetcode.code;public...原创 2019-11-24 19:28:19 · 202 阅读 · 0 评论 -
LeetCode13-罗马数字转整数
一、题目罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000二、示例示例 1:输入: “III”输出...原创 2019-11-24 00:21:31 · 109 阅读 · 0 评论 -
LeetCode12-整数转罗马数字
一、题目罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列...原创 2019-11-23 20:11:42 · 147 阅读 · 0 评论 -
LeetCode11-盛最多水的容器
一、题目给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。二、示例输入: [1,8,6,2,5,4,8,3,7]输出: 49三、代码pack...原创 2019-11-23 19:29:00 · 145 阅读 · 0 评论 -
LeetCode10-正则表达式匹配
一、题目给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *。二、示例示例 1:输入:...原创 2019-11-11 20:23:41 · 218 阅读 · 0 评论 -
LeetCode9-回文数
一、题目判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。二、示例示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是...原创 2019-11-10 23:29:13 · 217 阅读 · 0 评论 -
LeetCode8-字符串转换整数 (atoi)
一、题目请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。该字符串除了有效的整数部分之后也可能会存在多余的字符,这些字...原创 2019-11-10 21:57:40 · 143 阅读 · 0 评论 -
LeetCode7-整数反转
一、题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。二、示例示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21三、代码package com.leetcode.code;/** * LeetCode7-整数反转 * * 给出一个 32 位的有符号整数,你需要...原创 2019-10-30 23:46:50 · 271 阅读 · 0 评论 -
LeetCode6-Z字形变换
一、题目将一个给定字符串根据给定的行数,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “LEETCODEISHIRING” 行数为 3 时,排列如下:L C I RE T O E S I I GE D H N之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。请你实现这个将字符串进行指定行数变换的...原创 2019-10-29 00:55:21 · 276 阅读 · 2 评论 -
LeetCode5-最长回文子串
一、题目给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。二、示例示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”三、分析1、算法的由来在求解最长回文子串的问题时,一般的思路是以当前字符为中心,向其左右两边扩展寻找回文,但是这种解法的时间复杂度...原创 2019-10-28 01:00:47 · 281 阅读 · 0 评论 -
LeetCode4-寻找两个有序数组的中位数
一、题目给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。你可以假设 nums1 和 nums2 不会同时为空。二、示例示例 1:nums1 = [1, 3]nums2 = [2]则中位数是 2.0示例 2:nums1 = [1, 2]nums2 = [3, 4]...原创 2019-10-26 17:03:26 · 469 阅读 · 0 评论 -
LeetCode3-无重复字符的最长子串
一、题目给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。二、示例示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子...原创 2019-10-26 01:08:26 · 419 阅读 · 0 评论 -
LeetCode2-两数相加
一、题目给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。二、示例输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&...原创 2019-10-25 00:24:32 · 191 阅读 · 0 评论 -
LeetCode1-两数之和
一、题目给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。二、示例给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]三、代码...原创 2019-10-24 00:19:44 · 146 阅读 · 0 评论