LeetCodeTop100
西瓜的夏天啊
这个作者很懒,什么都没留下…
展开
-
206、反转链表
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]输入:head = [1,2]输出:[2,1]输入:head = []输出:[]链表中节点的数目范围是 [0, 5000]-5000 <= Node.val <= 5000using System;//给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。namespace test5{ public class Lis原创 2021-05-11 11:42:47 · 72 阅读 · 0 评论 -
20. 有效的括号
有效的括号给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。这个看到第一个联想到的就是栈。方法1、 public static boolean isValid(String s) { if (s.isEmpty()) { return true; } S.原创 2020-05-16 13:30:53 · 334 阅读 · 0 评论 -
5. 最长回文子串
给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: "bb...原创 2020-04-25 21:57:28 · 144 阅读 · 0 评论 -
1. 两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解法1 暴力cla...原创 2019-10-04 15:27:37 · 92 阅读 · 0 评论 -
2. 两数相加
给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> ...原创 2019-10-04 16:22:05 · 108 阅读 · 0 评论 -
常用的集合
1、哈希表Map<Integer,Integer>map=new HashMap<Integer, Integer>();map.put(nums[i], i);map.get(temp)2、一般题中的链表默认无头结点的,第一个节点就存放值原创 2019-10-05 11:14:22 · 137 阅读 · 0 评论 -
3. 无重复字符的最长子串
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所...原创 2019-10-05 13:03:12 · 126 阅读 · 0 评论 -
4. 寻找两个有序数组的中位数
**给定两个大小为 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]则中位数是 (2 + ...原创 2019-10-06 11:18:33 · 303 阅读 · 0 评论