![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
bellis__
这个作者很懒,什么都没留下…
展开
-
LeetCode-Python-(83)删除排序链表中的重复元素
删除排序链表中的重复元素给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例1:输入: 1->1->2输出: 1->2示例2:输入: 1->1->2->3->3输出: 1->2->3解题思路如果q和q的下一个元素的值相同,直接跳过此元素,即: q.next=q.next.next这时链表变成了:这时再进行一次遍历,如果q的值与q的下一个元素的值不一致,那么q向后一位移动,q.next会自动向后一位移动:q原创 2020-09-25 00:11:27 · 131 阅读 · 0 评论 -
LeetCode-Python-(206)反转链表
反转链表反转一个单链表。示例:输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL解题思路:参考博客代码:class Solution: def reverseList(self, head: ListNode) -> ListNode: if head==None or head.next==None: return head原创 2020-09-24 23:55:08 · 4321 阅读 · 0 评论 -
LeetCode简单-Python-(21)合并两个有序链表
21、合并两个有序链表将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4解题思路:哈哈哈哈哈哈这个图好形象如何递归:判断l1和l2哪个的头结点更小,然后较小结点的next指针指向(较小结点后面一个与较大结点中)较小的一个,调用递归解决终止条件:当两个链表为空时,表示已合并完成代码:class Solut原创 2020-08-17 15:56:59 · 318 阅读 · 0 评论 -
LeetCode简单-Python-(20)有效的括号
20、有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例1:输入: “()”输出: true示例2:输入: “()[]{}”输出: true示例3:输入: “(]”输出: false示例4:输入: “([)]”输出: false示例5:输入: “{[]}”输出: true解原创 2020-08-16 11:11:30 · 244 阅读 · 0 评论 -
LeetCode简单-Python-(14)最长公共前缀
14、最长公共前缀编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。所有输入只包含小写字母 a-z 。示例1:输入: [“flower”,“flow”,“flight”]输出: “fl”输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。解题思路:先使用zip把字符串根据下标打包成数组判断数组中的元素是否相同,若都相同就返回该元素代码:class Solution: def longe原创 2020-08-15 12:48:53 · 211 阅读 · 0 评论 -
LeetCode简单-Python-(13)罗马数字转整数
13、罗马数字转整数罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符数值I1V5X10L50C100D500M1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左原创 2020-08-14 22:17:00 · 259 阅读 · 0 评论 -
LeetCode简单-Python-(9)回文数
9、回文数判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例1:输入: 121输出: true示例2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。解题思路:先对给定的数进行判断如果是正数或0,将其转化为字符串后反转在转换为整数,判断和原来是否相等如原创 2020-08-14 20:34:00 · 147 阅读 · 0 评论 -
LeetCode简单-Python-(7)整数反转
7、整数反转给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例2:输入: -123输出: -321示例3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。解题思路:先把数分为正数和负数两个区间,再分别进行溢出的判断:1、如果给定的数大于等于0,将数转化为字符串再进行反转再转原创 2020-08-14 20:10:40 · 207 阅读 · 0 评论 -
LeetCode简单-Python-(1)两数之和
1、两数之和给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解题思路:方法1:一次for循环用一个for循环,在遍历nums的同时直接在里面查询target-nums[i]是否在原创 2020-08-14 10:21:16 · 133 阅读 · 0 评论