LeetCode Template Problems
文章平均质量分 87
LeetCode Template Problems
Tech In Pieces
这个作者很懒,什么都没留下…
展开
-
模板题目:Heap( 347 Top K Frequent Elements)
Given a non-empty array of integers, return the k most frequent elements. public class Solution { public List<Integer> topKFrequent(int[] nums, int k) { Map<Integer, Integer> map = new HashMap<>(); for(int n: nums){原创 2020-12-18 01:00:33 · 148 阅读 · 0 评论 -
模板题目:Trie( 720 Longest Word in Dictionary)
Given a list of strings words representing an English Dictionary, find the longest word in words that can be built one character at a time by other words in words. If there is more than one possible answer, return the longest word with the smallest lexicog原创 2020-12-18 00:57:07 · 115 阅读 · 0 评论 -
模板题目:Union Find( 721 Accounts Merge)
Given a list accounts, each element accounts[i] is a list of strings, where the first element accounts[i][0] is a name, and the rest of the elements are emails representing emails of the account. Now, we would like to merge these accounts. Two accounts def原创 2020-12-18 00:49:46 · 187 阅读 · 0 评论 -
模板题目:Stack( 20 Valid Parentheses)
class Solution { public boolean isValid(String s) { if (s == null || s.length() == 0) return false; if (s.length() % 2 == 1) return false; Stack<Character> stack = new Stack<>(); for (char c: s.toCha原创 2020-12-18 00:46:58 · 64 阅读 · 0 评论 -
模板题目:LinkedList/PreSum(1171 Remove Zero Sum Consecutive Nodes from Linked List)
Given the head of a linked list, we repeatedly delete consecutive sequences of nodes that sum to 0 until there are no such sequences. After doing so, return the head of the final linked list. You may return any such answer. 就是说 一遍又一遍的遍历这个likedlist,删除所有的加和原创 2020-12-18 00:38:10 · 143 阅读 · 0 评论 -
模板题目:DFS (130. Surrounded Regions)
Given a 2D board containing ‘X’ and ‘O’ (the letter O), capture all regions surrounded by ‘X’. 不太好直观理解 见下面的例子: Example: X X X X X O O X X X O X X O X X After running your function, the board should be: X X X X X X X X X X X X X O X X 也就是说将所有被X包围的O 都变成X 但是如原创 2020-12-17 05:56:58 · 127 阅读 · 0 评论 -
模板题目:Binary Search (35. Search Insert Position)
Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order. 就是找插入的位置 一个最最最最基本的二分查找 但是这只是最简单的情况 还有许多情况需要添加进去。 public int searchInsert(in原创 2020-12-17 05:33:28 · 255 阅读 · 0 评论 -
模板题目:Backtracking/Subset( 90 Subsets II)
Given a collection of integers that might contain duplicates, nums, return all possible subsets (the power set). Note: The solution set must not contain duplicate subsets. 这道题目就是非常经典的backtracking. 就是采用DFS class Solution { public List<List<Integer原创 2020-12-17 01:00:55 · 158 阅读 · 0 评论 -
模板题目:Two Pointer (186 Reverse Words in a String II)
Given an input string , reverse the string word by word. Input: [“t”,“h”,“e”," “,“s”,“k”,“y”,” “,“i”,“s”,” “,“b”,“l”,“u”,“e”] Output: [“b”,“l”,“u”,“e”,” “,“i”,“s”,” “,“s”,“k”,“y”,” ",“t”,“h”,“e”] reverse words, but now we got comma in that and we can’t do原创 2020-12-17 01:00:11 · 153 阅读 · 0 评论 -
模板题目:Interval/Mergelist (986 Interval List Intersections/56 Merge Intervals)
这两道题目 简直就是怪异方法使用大合集 toArray(), copyOf()从来不敢使用 现在 都用上了 现在是时候好好研究一下这几个方法了 986 Input: A = [[0,2],[5,10],[13,23],[24,25]], B = [[1,5],[8,12],[15,24],[25,26]] Output: [[1,2],[5,5],[8,10],[15,23],[24,24],[25,25]] class Solution { public int[][] intervalInters原创 2020-12-17 00:54:47 · 130 阅读 · 0 评论 -
LeetCode 25个模板题目
1 #bfs Leetcode: Max Area of Island 2 #dfs LeetCode: Surrounded Regions 3 #binarysearch LeetCode: Search Insert Position 4 #interval, #mergelist LeetCode: Interval List Intersections, Leetcode: Merge Intervals 5 #twopointer LeetCode: Reverse Words in a Str原创 2020-12-18 00:58:48 · 291 阅读 · 0 评论 -
模板题目:BFS (695. Max Area of Island)
这道题可以说是很经典了。 对每一个点进行bfs 注意对遍历过的点的值的修改 用于防止多次重复统计。而且我们不用像backtracking一样最后再改回来,因为如果两个land联通 那么这两者的面积是一样的。 但是实际上 下面的代码不是BFS 而是典型的DFS因为有递归 class Solution { private int count = 0; public int maxAreaOfIsland(int[][] grid) { if(grid == null || gri原创 2020-12-17 00:57:35 · 122 阅读 · 0 评论