leetcode
谜月姑娘
这个作者很懒,什么都没留下…
展开
-
leetcode--链表的设计--python
leetcode--链表的设计--python题目题目详情示例提示解题代码代码运行结果体会题目设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。题目详情在链表...原创 2019-04-04 11:07:52 · 907 阅读 · 0 评论 -
leetcode--在排序数组中查找元素的第一个和最后一个位置--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是 O(log n) 级别。如果数组中不存在目标值,返回 [-1, -1]。示例输入: nums = [5,7,7,8,8,10], target = 8输出: [3,4]输入...原创 2019-04-24 13:59:05 · 652 阅读 · 0 评论 -
leetcode--删除链表的倒数第N个节点--python
文章目录题目题目详情示例说明解题思路思路代码运行结果最佳方案题目题目详情给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明给定的 n 保证是有效的。解题思路思路设置两个指针,一快一慢快...原创 2019-04-29 15:28:54 · 602 阅读 · 0 评论 -
leetcode--最长回文子串--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。输入: "cbbd"输出: "bb"解题思路思路首先说一下我的伪代码吧1. 遍历字符串2. 比较遍历的两个值是否相等(while循...原创 2019-04-25 15:45:25 · 540 阅读 · 1 评论 -
leetcode--电话号码和字母组合--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].解题思路思路一看到这种组合题首先想到...原创 2019-05-08 15:11:14 · 274 阅读 · 0 评论 -
leetcode--括号生成--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。示例例如,给出 n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]解题思路思路运用回溯法回溯法的主要思想是从一条路往前...原创 2019-05-06 15:49:25 · 299 阅读 · 0 评论 -
leetcode--最长连续递增序列--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个未经排序的整数数组,找到最长且连续的的递增序列。示例输入: [1,3,5,4,7]输出: 3解释: 最长连续递增序列是 [1,3,5], 长度为3。尽管 [1,3,5,7] 也是升序的子序列, 但它不是连续的,因为5和7在原数组里被4隔开。 输入: [2,2,2,2,2]输出: 1解释: 最长连续递...原创 2019-05-20 15:53:17 · 804 阅读 · 0 评论 -
leetcode--下一个更大元素II--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个循环数组(最后一个元素的下一个元素是数组的第一个元素),输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1。示例输入: [1,2,1]输出: [2,-1,2]解释: 第一个 1 的下...原创 2019-05-15 16:44:01 · 417 阅读 · 0 评论 -
leetcode--罗马数字转整数--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M ...原创 2019-05-11 13:56:29 · 268 阅读 · 0 评论 -
leetcode--最小路径和--python
文章目录题目题目详情示例解题思路思路动态规划小知识代码运行结果最佳方案题目题目详情给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例输入:[ [1,3,1], [1,5,1], [4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。解题思路思路...原创 2019-05-13 16:26:07 · 712 阅读 · 0 评论 -
leetcode--长按键入--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回 True。示例输入:name = "alex", typed = "aaleex"输出:...原创 2019-05-18 15:17:32 · 413 阅读 · 0 评论 -
LeetCode Python题解(一)----双指针法
算法思想1.双指针法2.排序3.贪心思想4.二分查找5.分冶6.搜索7.动态规划8.数学1. 双指针法:双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。1.1 有序数组的 Two Sum题目描述:在有序数组中找出两个数,使它们的和为 target。Input: numbers={2, 7, 11, 15}, target=9Output: inde...原创 2019-06-11 17:50:58 · 4849 阅读 · 0 评论 -
leetcode--盛最多水的容器--python
文章目录题目题目详情说明示例解题代码思路代码运行结果最佳方案题目题目详情给定 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 ...原创 2019-04-19 14:50:45 · 258 阅读 · 0 评论 -
leetcode--最长公共前缀--python
文章目录题目题目详情示例解题思路代码运行结果最佳方案题目题目详情编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例输入: ["flower","flow","flight"]输出: "fl"输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。解题思路只要取出最大的字符串和最小的字符串,那...原创 2019-04-28 14:31:52 · 181 阅读 · 0 评论 -
leetcode--搜索插入位置--python
文章目录题目题目详情示例解题思路思路代码运行结果最佳方案题目题目详情给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。你可以假设数组中无重复元素。示例输入: [1,3,5,6], 5输出: 2输入: [1,3,5,6], 2输出: 1输入: [1,3,5,6], 7输出: 4输入: [1,3,5,6...原创 2019-04-23 16:42:17 · 286 阅读 · 0 评论 -
leetcode--反转链表--python
文章目录题目题目详情示例提示解题代码代码运行结果体会题目题目详情反转一个单链表。示例输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL提示你可以迭代或递归地反转链表。你能否用两种方法解决这道题?解题代码代码class Node: def __init__(self,val...原创 2019-04-04 17:21:54 · 628 阅读 · 0 评论 -
leetcode--对称二叉树--python
文章目录题目题目详情示例说明解题代码代码运行结果体会题目题目详情给定一个二叉树,检查它是否是镜像对称的。示例例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ ...原创 2019-04-10 21:56:24 · 403 阅读 · 0 评论 -
leetcode--整数反转--python
文章目录题目题目详情示例注意解题代码小知识代码运行结果体会题目题目详情给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例输入: 123输出: 321输入: -123输出: -321输入: 120输出: 21注意假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出...原创 2019-04-11 15:55:12 · 322 阅读 · 0 评论 -
leetcode--两数之和--python
文章目录题目题目详情示例解题代码代码运行结果体会题目题目详情给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = ...原创 2019-04-08 16:11:58 · 207 阅读 · 0 评论 -
leetcode--回文数--python
文章目录题目题目详情示例解题代码代码运行结果体会题目题目详情判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例输入: 121输出: true输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。输入: 10输出: false解释: 从右向左读, 为 01 。...原创 2019-04-12 13:39:00 · 279 阅读 · 0 评论 -
leetcode--买股票的最佳时机II--python
文章目录题目题目详情注意示例代码思路解题代码运行结果最佳方案题目题目详情给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)...原创 2019-04-16 14:00:35 · 388 阅读 · 0 评论 -
leetcode--字符串转换为整数--python
文章目录题目题目详情说明示例解题代码思路代码运行结果最佳方案题目题目详情请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成...原创 2019-04-13 13:38:54 · 497 阅读 · 0 评论 -
leetcode--删除排序数组中的重复项--python
文章目录题目题目详情示例说明解题代码思路代码运行结果最佳方案题目题目详情给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, ...原创 2019-04-14 15:32:45 · 286 阅读 · 0 评论 -
leetcode--无重复字符的最长子串--python
文章目录题目题目详情示例解题代码思路代码运行结果最佳方案题目题目详情给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。输入: "pwwkew"输出: 3...原创 2019-04-17 14:54:27 · 115 阅读 · 0 评论 -
leetcode--移除元素--python
文章目录题目题目详情示例说明解题代码思路代码小知识运行结果最佳方案题目题目详情给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例给定 nums = [3,2,2,3], v...原创 2019-04-22 15:15:36 · 396 阅读 · 0 评论 -
leetcode--删除排序链表中的重复元素--python
文章目录题目题目详情示例解题代码思路代码运行结果最佳方案题目题目详情给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例输入: 1->1->2输出: 1->2输入: 1->1->2->3->3输出: 1->2->3解题代码思路我们需要删除的是一个排序的链表里重复的值那么就需要两个指针来进行遍历,那么遍...原创 2019-04-15 15:46:13 · 421 阅读 · 0 评论 -
LeetCode Python题解(二)----排序
算法思想1.双指针法2.排序3.贪心思想4.二分查找5.分冶6.搜索7.动态规划8.数学快速排序用于求解 Kth Element 问题,也就是第 K 个元素的问题。可以使用快速排序的 partition() 进行实现。需要先打乱数组,否则最坏情况下时间复杂度为 O(N2 )。堆用于求解 TopK Elements 问题,也就是 K 个最小元素的问题。可以维护一个大小为...原创 2019-06-30 15:26:07 · 533 阅读 · 0 评论