随笔分类 - LeetCode Python
摘要:题目来源: https://leetcode.com/problems/candy/ 题意分析: 有N个孩子站成一条线。每个孩子有个排名。要求1.每个孩子至少一个糖果,2.相邻的孩子,那么较高排名的孩子得到更多的糖果。返回需要的最少糖果数量。题目中我们可以看到一个隐含的信息。如果相邻孩子排名相同,那
阅读全文
摘要:题目来源: https://leetcode.com/problems/gas-station/ 题意分析: 在一个圈子路线里面有N个汽油站,i站的汽油有gas[i]汽油。现在有一辆无限容量的车,它从i站开到(i+1)需要耗费cost[i]汽油。如果这辆车可以走完这个圈,那么返回这个车的起点,否者返
阅读全文
摘要:题目来源: https://leetcode.com/problems/clone-graph/ 题意分析: 克隆一个无向图。每个节点包括一个数值和它的邻居。 题目思路: 直接深度拷贝。 代码(python): # Definition for a undirected graph node # c
阅读全文
摘要:题目来源: https://leetcode.com/problems/palindrome-partitioning-ii/ 题意分析: 给定一个s,可以将s拆成若干个回文子字符串之和,如果拆成了m个子字符串,那么我们称s可以被m-1 cut。那么返回s的最小cut。 题目思路: 这是一个动态规划
阅读全文
摘要:题目来源: https://leetcode.com/problems/palindrome-partitioning/ 题意分析: 给定一个字符串s,将s拆成若干个子字符串,使得所有的子字符串都是回文字符串,返回所有这样的子字符串集合。比如s = “aab”,那么返回[["aa","b"],["a
阅读全文
摘要:题目来源: https://leetcode.com/problems/surrounded-regions/ 题意分析: 给定给一个二维的板,这个板只包括‘X’和‘O’。将被‘X’包围的‘O’变成‘X’。比如: 题目思路: 从板的周围出发,从周围的‘O’出发深度搜索,能搜到的‘O’用visit记录
阅读全文
摘要:题目来源: https://leetcode.com/problems/sum-root-to-leaf-numbers/ 题意分析: 一棵树,从跟节点到叶子节点比如1->2那么这个叶子代表12,计算所有叶子的和。 题目思路: 这题主要是怎么计算叶子的数值。leaf = node.sum * 10
阅读全文
摘要:题目来源: https://leetcode.com/problems/longest-consecutive-sequence/ 题意分析: 给定一个没有排好序的数组,找到最长的连续序列的长度。要求时间复杂度是O(n)。比如[100, 4, 200, 1, 3, 2],其最长长度是[1,2,3,4
阅读全文
摘要:题目来源: https://leetcode.com/problems/word-ladder/ 题意分析: 和上一题目类似,给定一个beginWord和一个endWord,以及一个字典list。这题需要的是要beginWord转化成endWord的最短路径长度。 题目思路: 最短路的思路。将beg
阅读全文
摘要:题目来源: https://leetcode.com/problems/word-ladder-ii/ 题意分析: 给定一个beginWord和一个endWord,以及一个字典单词,找出所有从beginWord变成endWord的所有最短路径,单词变化每次只能变一个字母,所变的字母必须在字典里面。
阅读全文
摘要:题目来源: https://leetcode.com/problems/valid-palindrome/ 题意分析: 给定一个字符串,只保留字符,并将其转化成小写字母,判断他是否回文字符串。 题目思路: 首先要判断是否字符,.isalnum(),然后就直接是判断是否回文的问题了。 代码(pytho
阅读全文
摘要:题目来源: https://leetcode.com/problems/binary-tree-maximum-path-sum/ 题意分析: 给定一棵树,找出一个数值最大的路径,起点可以是任意节点或者叶子。 题目思路: 我们可以先找路径的最大mr,ml,那么最大值是max(solve(root),
阅读全文
摘要:题目来源: https://leetcode.com/problems/best-time-to-buy-and-sell-stock-iii/ 题意分析: 和上题类似,array[i]代表第i天物品价格,如果只能交易2次。问最大利润。 题目思路: 这是一个动态规划问题。不难想到把整个数组拆成两部分
阅读全文
摘要:题目来源: https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/ 题意分析: 和上题类似,给定array,代表第i天物品i的价格。如果可以交易无数次(手上有物品不能买),问最高利润。 题目思路: 记录当前最小值,如果遇到a
阅读全文
摘要:题目来源: https://leetcode.com/problems/best-time-to-buy-and-sell-stock/ 题意分析: 给定一个数组,代表array[i] 代表第i天的价格。问买买卖这个物品一次的最高利润是多少(i买,j卖,j > i)。 题目思路: 记录当前最小值,如
阅读全文
摘要:题目来源: https://leetcode.com/problems/triangle/ 题意分析: 给定一个三角数组。找到自顶向下的最短路径。如: 题目思路: 直接求出所有的自顶向下路径。ans [i][j] = min(ans[i-1][j],ans[i- 1][j + 1]) + trian
阅读全文
摘要:题目来源: https://leetcode.com/problems/pascals-triangle-ii/ 题意分析: 给定一个整数k,返回第k层的Triangle。 题目思路: 根据Triangle规则,直接计算即可。 代码(python):
阅读全文
摘要:题目来源: https://leetcode.com/problems/pascals-triangle/ 题意分析: 给定一个整数,输出N层的Triangle 。 题目分析: 直接根据Triangle的定理,ans[i][j] = ans[i - 1][j] + ans[i - 1][j + 1]
阅读全文
摘要:题目来源: https://leetcode.com/problems/populating-next-right-pointers-in-each-node-ii/ 题意分析: 根据上一题,如果给定的树不是完全树同层的连接。要求常数空间时间复杂度。如: 题目思路: 用两个指针来记录下一个指针和下一
阅读全文
摘要:题目来源: https://leetcode.com/problems/populating-next-right-pointers-in-each-node/ 题意分析: 给定一个二叉完全树,将同一层的节点连起来,其中最后一个节点连接到NULL。如 题目思路: 由于是完全树。首先,将所有节点的左子
阅读全文

浙公网安备 33010602011771号