![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
wangxizzz
人生苦短,随性而活。
展开
-
LeetCode-459. 重复的子字符串
给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。示例 1:输入: “abab”输出: True解释: 可由子字符串 “ab” 重复两次构成。 示例 2:输入: “aba”输出: False 示例 3:输入: “abcabcabcabc”输出: True解释: 可由子字符串 “abc” ...原创 2018-08-14 09:48:40 · 1652 阅读 · 1 评论 -
22. Generate Parentheses
解题思路所谓Backtracking都是这样的思路:在当前局面下,你有若干种选择。那么尝试每一种选择。如果已经发现某种选择肯定不行(因为违反了某些限定条件),就返回;如果某种选择试到最后发现是正确解,就将其加入解集所以你思考递归题时,只要明确三点就行:选择 (Options),限制 (Restraints),结束条件 (Termination)。即“ORT原则”(这个是我自己编的)对于这道题...原创 2019-04-05 13:03:10 · 132 阅读 · 0 评论 -
20. Valid Parentheses
给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: “([)...原创 2019-04-05 09:13:01 · 68 阅读 · 0 评论 -
常用算法时间空间复杂度
参考网址:https://www.javazhiyin.com/1313.html Hi there! This webpage covers the space and time Big-O complexities of common algorithmsused in Computer Science.&n...转载 2019-04-04 16:15:01 · 695 阅读 · 1 评论 -
458. 可怜的小猪(Java)
458. 可怜的小猪问题描述:有1000只水桶,其中有且只有一桶装的含有毒药,其余装的都是水。它们从外观看起来都一样。如果小猪喝了毒药,它会在15分钟内死去。问题来了,如果需要你在一小时内,弄清楚哪只水桶含有毒药,你最少需要多少只猪?回答这个问题,并为下列的进阶问题编写一个通用算法。进阶:假设有 n 只水桶,猪饮水中毒后会在 m 分钟内死亡,你需要多少猪(x)就能在 p 分钟内找出“...原创 2018-11-19 21:11:15 · 645 阅读 · 0 评论 -
LeetCode-468. 验证IP地址 Java
问题描述编写一个函数来验证输入的字符串是否是有效的 IPv4 或 IPv6 地址。IPv4 地址由十进制数和点来表示,每个地址包含4个十进制数,其范围为 0 - 255, 用(“.”)分割。比如,172.16.254.1;同时,IPv4 地址内的数不会以 0 开头。比如,地址 172.16.254.01 是不合法的。IPv6 地址由8组16进制的数字来表示,每组表示 16 比特。这...原创 2018-09-07 19:43:03 · 1257 阅读 · 0 评论 -
18. 四数之和 Java
问题描述给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。注意:答案中不可以包含重复的四元组。示例:给定数组 nums = [1, 0, -1, 0, -2, 2],和 target = 0。满足要求的...原创 2018-08-17 17:28:39 · 1130 阅读 · 0 评论 -
15. 三数之和 Java
问题描述给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]...原创 2018-08-17 17:22:54 · 1305 阅读 · 0 评论 -
48. 旋转图像 Java
问题描述给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ],原地旋转输入矩阵,使其变为: [ [7,4,1], [8,5...原创 2018-08-17 22:06:59 · 538 阅读 · 0 评论 -
LeetCode-198. 打家劫舍-Java
LeetCode-198 House Robber问题描述你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1] ...原创 2018-08-15 16:16:37 · 226 阅读 · 0 评论 -
LeetCode-172. 阶乘后的零 Java
172. Factorial Trailing Zeroes Java问题描述给定一个整数 n,返回 n! 结果尾数中零的数量。示例 1:输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零。 示例 2:输入: 5 输出: 1 解释: 5! = 120, 尾数中有 1 个零. 说明: 你算法的时间复杂度应为 O(log n) 。问题分析 要求...原创 2018-08-14 16:39:17 · 512 阅读 · 0 评论 -
LeetCode-26. 删除排序数组中的重复项(Java)
26. Remove Duplicates from Sorted Array(Java)给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums ...原创 2018-08-14 14:15:06 · 416 阅读 · 0 评论 -
LeetCode-14. 最长公共前缀
LeetCode-14. Longest Common Prefix编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,”flow”,”flight”] 输出: “fl” 示例 2:输入: [“dog”,”racecar”,”car”] 输出: “” 解释: 输入不存在公共前缀。 说明:所有输...原创 2018-08-14 13:11:54 · 124 阅读 · 0 评论 -
LeetCode-1. Two Sum
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 解题思路:利用一张哈希表,在Java中使用HashMap,而key为nums[i],...原创 2018-08-14 10:26:46 · 103 阅读 · 0 评论 -
24. Swap Nodes in Pairs
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例:给定 1->2->3->4, 你应该返回 2->1->4->3.Java代码如下:/** * Definition for singly-linked list. * public class ListNode { * ...原创 2019-04-05 21:47:05 · 71 阅读 · 0 评论