随笔分类 - leetcode
摘要:题目 思路 题解 reference "0222 Count Complete Tree Nodes"
阅读全文
摘要:1. 拼多多笔试题 循环小数的开始位置和循环节 解析: 模拟长除法的计算过程。 ①mod = a%b; ②小数 = (mod*10) / b; ③mod = (mod*10)%b; 循环②③步,当出现重复的余数的时候,也就是循环节出现了 - 也可以使用一个map<int,int> 组成(余数,余数的
阅读全文
摘要:题目 "leetcode(300)—— Longest Increasing Subsequence(最长递增子序列)" : 三种方法 解析 方法一:方法1:排序+LCS:一个简单的思路是将给定的序列先进行有序化( O(nlog(n))),然后使用LCS算法来查找给定的序列及有序化后的序列之间的最长
阅读全文
摘要:题目 解析 状态:dp[i]表示到达第i个阶梯需要的最小花费; 状态转移方程:dp[i] = min( dp[i 2], dp[i 1] ) + cost[i]; C++ class Solution { public: int minCostClimbingStairs(vector& cost)
阅读全文
摘要:题目 解析 list 是一个双向链表,存储键值(key,value),map ::iterator 是用来存放key值所对应的list中的位置; list链表的开头,是最近使用过的,当每次进行get()和put()操作时,我们就要更新。要注意的是,若(key1,value1)已经存在,当put(ke
阅读全文
摘要:题目 解析 C++ class Solution { public: / @param nums: The integer array you should partition @param k: An integer @return: The index after partition / int
阅读全文
摘要:关于数组的几道面试题 [Leetcode] 628. 三个数的最大乘积 leetcode414-第三大的数 leetcode414-第三大的数 LeetCode 238 计算数组除自己外的元素乘积 LeetCode 238 计算数组除自己外的元素乘积 LeetCode:152_Maximum Pro
阅读全文
摘要:相关题型 参考 "Maximum Submatrix & Largest Rectangle" "[leetcode]221. Maximal Square" "最大子矩阵和"
阅读全文
摘要:题目 解析 通过递归实现;可以用先序遍历,然后串成链表 主要思想就是:先递归对右子树进行链表化并记录,然后将root right指向 左子树进行链表化后的头结点,然后一直向右遍历子树,连接上之前的右子树 理解上面代码过后就容易理解: "LeetCode | Flatten Binary Tree t
阅读全文
摘要:LeetCode 方法详解 LeetCode 方法详解
阅读全文
摘要:题目 解析 题目看起来简单, 可以用O(n k)的复杂度解决,然后滑窗的方法, 写的时候各种bug 参考用O(n)解决,还有类似题目求滑窗内的中值; 题目来源 "[LeetCode] Sliding Window Maximum 滑动窗口最大值 " "239. 滑动窗口最大值"
阅读全文
摘要:中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2.5 设计一个支持以下两种操作的数据结构: void addNum(int num) - 从数据流中添加一个整数到数据结构中。
阅读全文
摘要:拼多多笔试第三题 除了题目具体方法值得注意外,数据的输入格外注意 题目 描述 给n个人的朋友名单,告诉你user,请找出user最可能认识的人。(他和user有最多的共同好友且他不是user的朋友) n include include include using namespace std; int
阅读全文
摘要:题目 有 N 个房间,开始时你位于 0 号房间。每个房间有不同的号码:0,1,2,...,N 1,并且房间里可能有一些钥匙能使你进入下一个房间。 在形式上,对于每个房间 i 都有一个钥匙列表 rooms[i],每个钥匙 rooms[i][j] 由 [0,1,...,N 1] 中的一个整数表示,其中
阅读全文
摘要:Problem Description After enjoying the movie,LeLe went home alone. LeLe decided to build blocks. LeLe has already built piles. He wants to move some b
阅读全文
摘要:题目 解析 C++ class Solution { public: int reachNumber(int target) { // 理解这题的意思 这题就好做了 // 分析 首先考虑一种比较极端的情况 即一直向正方向移动n步 ,刚好达到target // 那么target的值就等于前n步的和 ,
阅读全文
摘要:"LeetCode 84. Largest Rectangle in Histogram 单调栈应用" "leetcode+ 循环数组,求右边第一个大的数字" "求一个数组中右边第一个比他大的数(单调栈" "LeetCode——寻找数组中第三大的数"
阅读全文
摘要:题目 https://leetcode.com/problems/binary-tree-paths/discuss/68279/C++-non-recursive-version-and-recursive-version Given a binary tree, return all root-
阅读全文
摘要:题目:将一个数组分成两部分,不要求两部分所包含的元素个数相等,要求使得这两个部分的和的差值最小。比如对于数组{1,0,1,7,2,4},可以分成{1,0,1,2,4}和{7},使得这两部分的差值最小。 思路:这个问题可以转化为求数组的一个子集,使得这个子集中的元素的和尽可能接近sum/2,其中sum
阅读全文