leetcode
酷记麻辣油
这个作者很懒,什么都没留下…
展开
-
leetcode刷题之 字符串(6):字符串同构
[LeetCode] Isomorphic Strings 同构字符串Given two stringssandt, determine if they are isomorphic.Two strings are isomorphic if the characters inscan be replaced to gett.All occurrences of a ...转载 2019-06-28 10:13:14 · 92 阅读 · 0 评论 -
leetcode刷题之 树(24):二叉树的最近公共祖先
236.Lowest Common Ancestor of a Binary TreeGiven a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.According to thedefinition of LCA on Wikipedia: “The lowest c...转载 2019-06-23 09:24:29 · 110 阅读 · 0 评论 -
leetcode刷题之 树(25):从有序数组中构造二叉查找树
[LeetCode] Convert Sorted Array to Binary Search Tree 将有序数组转为二叉搜索树Given an array where elements are sorted in ascending order, convert it to a height balanced BST.For this problem, a height-bal...转载 2019-06-23 10:32:09 · 244 阅读 · 0 评论 -
leetcode刷题之 树(26):根据有序链表构造平衡的二叉查找树
[LeetCode] Convert Sorted List to Binary Search Tree 将有序链表转为二叉搜索树Given a singly linked list where elements are sorted in ascending order, convert it to a height balanced BST.For this problem, a...转载 2019-06-23 11:05:10 · 129 阅读 · 0 评论 -
leetcode刷题之 树(27):在二叉查找树中寻找两个节点,使它们的和为一个给定值
[LeetCode] Two Sum IV - Input is a BST 两数之和之四 - 输入是二叉搜索树Given a Binary Search Tree and a target number, return true if there exist two elements in the BST such that their sum is equal to the give...转载 2019-06-23 11:53:19 · 161 阅读 · 0 评论 -
leetcode刷题之 树(28):在二叉查找树中查找两个节点之差的最小绝对值
[LeetCode] Minimum Absolute Difference in BST 二叉搜索树的最小绝对差Given a binary search tree with non-negative values, find the minimumabsolute differencebetween values of any two nodes.Example:Inp...转载 2019-06-23 11:53:26 · 165 阅读 · 0 评论 -
leetcode刷题之 树(29):寻找二叉查找树中出现次数最多的值
[LeetCode] Find Mode in Binary Search Tree 找二分搜索数的众数Given a binary search tree (BST) with duplicates, find all themode(s)(the most frequently occurred element) in the given BST.Assume a BST i...转载 2019-06-24 14:48:38 · 203 阅读 · 0 评论 -
leetcode刷题之 树(30):Trie
实现一个 Trie实现一个 Trie,用来求前缀和参考数据结构线段树转载 2019-06-24 14:49:03 · 94 阅读 · 0 评论 -
leetcode刷题之 字符串(8):判断一个整数是否是回文数
[LeetCode] Palindrome Number 验证回文数字Determine whether an integer is a palindrome. An integerisapalindrome when itreads the same backward as forward.Example 1:Input: 121Output: trueExa...转载 2019-06-29 09:09:48 · 115 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(1):把数组中的 0 移到末尾
[LeetCode] Move Zeroes 移动零Given an arraynums, write a function to move all0's to the end of it while maintaining the relative order of the non-zero elements.For example, givennums = [0, 1, 0...转载 2019-06-29 11:00:01 · 210 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(2):改变矩阵维度
[LeetCode] Reshape the Matrix 重塑矩阵In MATLAB, there is a very useful function called 'reshape', which can reshape a matrix into a new one with different size but keep its original data.You're gi...转载 2019-06-29 11:00:25 · 118 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(3):找出数组中最长的连续 1
[LeetCode] Max Consecutive Ones 最大连续1的个数Given a binary array, find the maximum number of consecutive 1s in this array.Example 1:Input: [1,1,0,1,1,1]Output: 3Explanation: The first two d...转载 2019-06-29 11:28:38 · 226 阅读 · 0 评论 -
Leetcode 题解 - 位运算(1) 统计两个数的二进制表示有多少位不同
原理1. 基本原理0s 表示一串 0,1s 表示一串 1。x ^ 0s = x x & 0s = 0 x | 0s = xx ^ 1s = ~x x & 1s = x x | 1s = 1sx ^ x = 0 x & x = x x | x = x利用 x ^ 1s = ~x 的特点,可以...转载 2019-07-02 09:20:29 · 230 阅读 · 0 评论 -
Leetcode 题解 - 位运算(2) 数组中唯一一个不重复的元素
[LeetCode] Single Number 单独的数字Given an array of integers, every element appearstwiceexcept for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could yo...转载 2019-07-02 09:22:44 · 113 阅读 · 0 评论 -
Leetcode 题解 - 位运算(3) 找出数组中缺失的那个数
[LeetCode] Missing Number 丢失的数字Given an array containingndistinct numbers taken from0, 1, 2, ..., n, find the one that is missing from the array.For example,Givennums=[0, 1, 3]return...转载 2019-07-02 09:37:08 · 156 阅读 · 0 评论 -
Leetcode 题解 - 位运算(4): 数组中不重复的两个元素
[LeetCode] Single Number III 单独的数字之三Given an array of numbersnums, in which exactly two elements appear only once and all the other elements appear exactly twice. Find the two elements that appe...转载 2019-07-02 09:58:21 · 180 阅读 · 0 评论 -
Leetcode 题解 - 位运算(5) :翻转一个数的比特位
[LeetCode] Reverse Bits 翻转位Reverse bits of a given 32 bits unsigned integer.Example 1:Input: 00000010100101000001111010011100Output: 00111001011110000010100101000000Explanation: The ...转载 2019-07-02 10:19:47 · 427 阅读 · 0 评论 -
leetcode刷题之 栈和队列(1):用栈实现队列
[LeetCode] Implement Queue using Stacks 用栈来实现队列Implement the following operations of a queue using stacks.push(x) -- Push element x to the back of queue. pop() -- Removes the element from in f...转载 2019-06-26 09:22:02 · 140 阅读 · 0 评论 -
leetcode刷题之 栈和队列(2):用队列实现栈
[LeetCode] Implement Stack using Queues 用队列来实现栈Implement the following operations of a stack using queues.push(x) -- Push element x onto stack. pop() -- Removes the element on top of the stack...转载 2019-06-26 09:39:30 · 99 阅读 · 0 评论 -
leetcode刷题之 栈和队列(3):最小值栈
[LeetCode] Min Stack 最小栈Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.push(x) -- Push element x onto stack. pop() -- Removes the element on t...转载 2019-06-26 10:00:10 · 142 阅读 · 0 评论 -
leetcode刷题之 栈和队列(4):验证括号
[LeetCode] Valid Parentheses 验证括号Given a string containing just the characters'(',')','{','}','['and']', determine if the input string is valid.An input string is valid if:Open brackets m...转载 2019-06-26 10:14:17 · 144 阅读 · 0 评论 -
leetcode刷题之 栈和队列(5):数组中元素与下一个比它大的元素之间的距离
[LeetCode] Daily Temperatures 日常温度Given a list of daily temperaturesT, return a list such that, for each day in the input, tells you how many days you would have to wait until a warmer temperature....转载 2019-06-26 10:47:49 · 199 阅读 · 0 评论 -
leetcode刷题之 栈和队列(6):循环数组中比当前元素大的下一个元素
503.Next Greater Element IIMedium61038FavoriteShareGiven a circular array (the next element of the last element is the first element of the array), print the Next Greater Number for every eleme...转载 2019-06-26 11:12:20 · 147 阅读 · 0 评论 -
Leetcode 题解 - 位运算(6-9) :不用额外变量交换两个整数
6.不用额外变量交换两个整数程序员代码面试指南 :P317a = a ^ b;b = a ^ b;a = a ^ b;7[LeetCode] Power of Two 判断2的次方数Given an integer, write a function to determine if it is a power of two.Example 1:Input: ...转载 2019-07-03 08:18:30 · 266 阅读 · 0 评论 -
Leetcode 题解 - 位运算(10) : 求一个数的补码
[LeetCode] Number Complement 补数Given a positive integer, output its complement number. The complement strategy is to flip the bits of its binary representation.Note:The given integer is guara...转载 2019-07-03 08:32:02 · 132 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(4):有序矩阵查找
[LeetCode] Search a 2D Matrix II 搜索一个二维矩阵之二Write an efficient algorithm that searches for a value in anmxnmatrix. This matrix has the following properties:Integers in each row are sorted...转载 2019-06-29 11:26:00 · 123 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(5):有序矩阵的 Kth Element
[LeetCode] Kth Smallest Element in a Sorted Matrix 有序矩阵中第K小的元素Given anxnmatrix where each of the rows and columns are sorted in ascending order, find the kth smallest element in the matrix....转载 2019-06-30 10:18:49 · 139 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(6):一个数组元素在 [1, n] 之间,其中一个数被替换为另一个数,找出重复的数和丢失的数
[LeetCode] Set Mismatch 设置不匹配The setSoriginally contains numbers from 1 ton. But unfortunately, due to the data error, one of the numbers in the set got duplicated toanothernumber in the set...转载 2019-06-30 10:40:00 · 190 阅读 · 0 评论 -
Leetcode 题解 - 位运算(11) :实现整数的加法
[LeetCode] Sum of Two Integers 两数之和Calculate the sum of two integersaandb, but you arenot allowedto use the operator+and-.Example 1:Input: a = 1, b = 2Output: 3Example 2:Input...转载 2019-07-03 09:11:07 · 133 阅读 · 0 评论 -
Leetcode 题解 - 位运算(12) :字符串数组最大乘积
[LeetCode] Maximum Product of Word Lengths 单词长度的最大积Given a string arraywords, find the maximum value oflength(word[i]) * length(word[j])where the two words do not share common letters. You may...转载 2019-07-03 09:27:49 · 102 阅读 · 0 评论 -
Leetcode 题解 - 位运算(13) :统计从 0 ~ n 每个数的二进制表示中 1 的个数
[LeetCode] Counting Bits 计数位Given a non negative integer numbernum. For every numbersiin the range0 ≤ i ≤ numcalculate the number of 1's in their binary representation and return them as an ...转载 2019-07-03 09:44:56 · 252 阅读 · 0 评论 -
leetcode刷题之 字符串(1):字符串循环移位包含
字符串——循环移位包含问题s1 = AABCD, s2 = CDAAReturn : true给定两个字符串 s1 和 s2,要求判定 s2 是否能够被 s1 做循环移位得到的字符串包含。s1 进行循环移位的结果是 s1s1 的子字符串,因此只要判断 s2 是否是 s1s1 的子字符串即可。方法一:构建辅助字符串,利用了额外的空间解析:构建一个辅助字符串s = s...转载 2019-06-28 10:12:42 · 725 阅读 · 0 评论 -
leetcode刷题之 字符串(2):字符串循环移位
字符串循环移位把字符串移动n位。可以一个一个移动,这样的话,要移动n次,每次移动len个。算法时间复杂度为O(n*len)。也可以开辟一个新的内存,把移动的最终位置计算出来,直接放到那里即可,这样时间负责度为O(1),空间复杂度为O(len)。除此之外,还有时间负责度为O(1),空间负责度也为O(1)的算法。第一种方法为把右边的向左移,每次移动n位。一直到末尾,再把末尾的反转好...转载 2019-06-28 10:12:50 · 688 阅读 · 0 评论 -
leetcode刷题之 字符串(3): 字符串中单词的翻转
s = "I am a student"Return "student a am I"将每个单词翻转,然后将整个字符串翻转。public static void Reverse(char[] array, int start, int end) { if (array == null || start < 0 || end > array.Leng...转载 2019-06-28 10:12:56 · 127 阅读 · 0 评论 -
leetcode刷题之 字符串(4):两个字符串包含的字符是否完全相同
242. Valid Anagram (Easy)s = "anagram", t = "nagaram", return true.s = "rat", t = "car", return false.由于本题的字符串只包含 26 个小写字符,因此可以使用长度为 26 的整型数组对字符串出现的字符进行统计,不再使用 HashMap。class Solution { ...转载 2019-06-28 10:13:03 · 245 阅读 · 0 评论 -
leetcode刷题之 字符串(5): 计算一组字符集合可以组成的回文字符串的最大长度
[LeetCode] Longest Palindrome 最长回文串Given a string which consists of lowercase or uppercase letters, find the length of the longest palindromes that can be built with those letters.This is case ...转载 2019-06-28 10:13:08 · 166 阅读 · 0 评论 -
leetcode刷题之 数组与矩阵(7):找出数组中重复的数,数组值在 [1, n] 之间
[LeetCode] Find the Duplicate Number 寻找重复数Given an arraynumscontainingn+ 1 integers where each integer is between 1 andn(inclusive), prove that at least one duplicate number must exist. Ass...转载 2019-06-30 11:12:37 · 165 阅读 · 0 评论 -
Leetcode 题解 - 哈希表(1):数组中两个数的和为给定值
哈希表使用 O(N) 空间复杂度存储数据,并且以 O(1) 时间复杂度求解问题。 Java 中的HashSet用于存储一个集合,可以查找元素是否在集合中。如果元素有穷,并且范围不大,那么可以用一个布尔数组来存储一个元素是否存在。例如对于只有小写字符的元素,就可以用一个长度为 26 的布尔数组来存储一个字符集合,使得空间复杂度降低为 O(1)。 Java 中的HashMap主...转载 2019-07-30 20:10:53 · 139 阅读 · 0 评论 -
Leetcode 题解 - 哈希表(2):判断数组是否含有重复元素
[LeetCode] Contains Duplicate 包含重复值Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it...转载 2019-07-30 20:10:59 · 151 阅读 · 0 评论 -
Leetcode 题解 - 哈希表(3):最长和谐序列
[LeetCode] Longest Harmonious Subsequence 最长和谐子序列排序后建立存储每个数字出现次数的hashmap 记录出现次数,再次遍历数组 如果两数字之差小于等于1 那么从map中取出这两个数字出现的次数+1 记录下来这个结果并和后面的结果比较We define a harmonious array is an array where the differ...转载 2019-07-30 20:11:07 · 128 阅读 · 0 评论