MCPcopy Create free account

hub / github.com/LjyYano/LeetCode / functions

Functions1,125 in github.com/LjyYano/LeetCode

↓ 1 callersMethodbacktrack
回溯放置皇后 @param queens 每行皇后的列位置 @param row 当前要放置皇后的行 @param n 棋盘大小
src/main/java/L0052_NQueensII.java:39
↓ 1 callersMethodbacktrack
回溯方法 @param result 存储所有符合条件的组合 @param current 当前正在构建的组合 @param candidates 候选数组 @param remain 剩余需要凑成的目标值 @param start 当前可以选择的起始位置
src/main/java/L0040_CombinationSumII.java:49
↓ 1 callersMethodbacktrack
回溯方法 @param digits 输入的数字字符串 @param index 当前处理的数字索引 @param current 当前构建的字母组合 @param result 结果列表
src/main/java/L0017_LetterCombinationsOfAPhoneNumber.java:41
↓ 1 callersMethodbacktrack
回溯法生成所有可能的表达式 @param result 结果列表 @param num 输入的数字字符串 @param target 目标值 @param index 当前处理的位置 @param eval 当前表达式的计算结果 @param multed 上一个乘法操作的结果 @param exp
src/main/java/L0282_ExpressionAddOperators.java:50
↓ 1 callersMethodbacktrack
(List<List<Integer>> result, List<Integer> current, int k, int remain, int start)
src/main/java/L0216_CombinationSumIII.java:48
↓ 1 callersMethodbacktrack
回溯法 @param s 原始字符串 @param index 当前处理的位置 @param removeLeft 还需要删除的左括号数量 @param removeRight 还需要删除的右括号数量 @param open 当前未匹配的左括号数量 @param path 当前构建的路径 @para
src/main/java/L0301_RemoveInvalidParentheses.java:65
↓ 1 callersMethodbacktrack
回溯生成括号 @param result 结果列表 @param current 当前生成的字符串 @param left 剩余的左括号数量 @param right 剩余的右括号数量
src/main/java/L0022_GenerateParentheses.java:25
↓ 1 callersMethodbacktrack
(String s, int start, List<String> current, List<List<String>> result)
src/main/java/L0131_PalindromePartitioning.java:32
↓ 1 callersMethodbfs
(String beginWord, String endWord, Set<String> dict, Map<String, Set<String>> from, Map<S
src/main/java/L0126_WordLadderII.java:63
↓ 1 callersMethodbuildBST
递归构建二叉搜索树 @param nums 有序数组 @param left 左边界(包含) @param right 右边界(包含) @return 构建好的二叉搜索树的根节点
src/main/java/L0108_ConvertSortedArrayToBinarySearchTree.java:81
↓ 1 callersMethodbuildTree
(int[] nums, int start, int end)
src/main/java/L0307_RangeSumQueryMutable.java:56
↓ 1 callersMethodbuildTreeHelper
递归构建二叉树 @param inorder 中序遍历数组 @param inStart 中序遍历的起始位置 @param inEnd 中序遍历的结束位置 @param postorder 后序遍历数组 @param postStart 后序遍历的起始位置 @param postEnd 后序遍历的
src/main/java/L0106_ConstructBinaryTreeFromInorderAndPostorderTraversal.java:80
↓ 1 callersMethodbuildTreeHelper
递归构建二叉树 @param preorder 前序遍历数组 @param preStart 前序遍历的起始位置 @param preEnd 前序遍历的结束位置 @param inorder 中序遍历数组 @param inStart 中序遍历的起始位置 @param inEnd 中序遍历的结束位
src/main/java/L0105_ConstructBinaryTreeFromPreorderAndInorderTraversal.java:80
↓ 1 callersMethodbuildTrie
(String[] words)
src/main/java/L0212_WordSearchII.java:69
↓ 1 callersMethodcalSteps
计算在 n 的范围内,以 n1 为前缀的数字个数 例如:n = 100, n1 = 1, n2 = 2 返回的是以 1 为前缀且不超过 100 的数字个数
src/main/java/L0440_KthSmallestInLexicographicalOrder.java:46
↓ 1 callersMethodcalculate
(String x, String y)
src/main/java/L0399_EvaluateDivision.java:93
↓ 1 callersMethodcalculate
(int num1, int num2, String operator)
src/main/java/L0150_EvaluateReversePolishNotation.java:72
↓ 1 callersMethodcalculateSum
(long k, int m)
src/main/java/L0483_SmallestGoodBase.java:33
↓ 1 callersMethodcanForm
(String word, int start)
src/main/java/L0472_ConcatenatedWords.java:48
↓ 1 callersMethodcanSplit
判断是否可以将数组分成 m 个子数组,且每个子数组的和不超过 maxSum
src/main/java/L0410_SplitArrayLargestSum.java:53
↓ 1 callersMethodcountLessOrEqual
计算矩阵中小于等于 target 的元素个数 从左下角开始,如果当前元素大于 target,向上移动 如果当前元素小于等于 target,将这一列的元素个数加入计数,然后向右移动
src/main/java/L0378_KthSmallestElementInSortedMatrix.java:54
↓ 1 callersMethodcountLiveNeighbors
(int[][] board, int row, int col)
src/main/java/L0289_GameOfLife.java:67
↓ 1 callersMethodcreateLine
(String[] words, int start, int end, int maxWidth, boolean isLastLine)
src/main/java/L0068_TextJustification.java:89
↓ 1 callersMethodcreatePalindrome
(long left)
src/main/java/L0479_LargestPalindromeProduct.java:33
↓ 1 callersMethoddeserializeHelper
(int[] nums, int start, int end)
src/main/java/L0449_SerializeAndDeserializeBst.java:69
↓ 1 callersMethoddeserializeHelper
(Queue<String> queue)
src/main/java/L0297_SerializeAndDeserializeBinaryTree.java:109
↓ 1 callersMethoddfs
深度优先搜索查找所有满足条件的路径 @param node 当前节点 @param targetSum 目标和 @param currentPath 当前路径 @param result 结果集
src/main/java/L0113_PathSumII.java:55
↓ 1 callersMethoddfs
DFS 遍历图,使用 Hierholzer 算法找到欧拉路径
src/main/java/L0332_ReconstructItinerary.java:59
↓ 1 callersMethoddfs
(String board, int[] hand)
src/main/java/L0488_ZumaGame.java:64
↓ 1 callersMethoddfs
(String beginWord, String word, Map<String, Set<String>> from, List<String> path, List<Li
src/main/java/L0126_WordLadderII.java:117
↓ 1 callersMethoddfs
(TreeNode node, int currentSum)
src/main/java/L0129_SumRootToLeafNumbers.java:63
↓ 1 callersMethoddfs
深度优先搜索,将相连的陆地标记为已访问(改为 '0')
src/main/java/L0200_NumberOfIslands.java:65
↓ 1 callersMethoddfs
(TreeNode node)
src/main/java/L0508_MostFrequentSubtreeSum.java:45
↓ 1 callersMethoddfs
(int state, int currentSum)
src/main/java/L0464_CanIWin.java:62
↓ 1 callersMethoddfs
(char[][] board, int row, int col, TrieNode node, List<String> result)
src/main/java/L0212_WordSearchII.java:86
↓ 1 callersMethoddfs
统计以当前节点为起点,和为 targetSum 的路径数量
src/main/java/L0437_PathSumIII.java:50
↓ 1 callersMethoddfs
深度优先搜索,自底向上处理每个节点
src/main/java/L0333_LargestBSTSubtree.java:58
↓ 1 callersMethodeliminate
消除桌面上三个或以上连续相同颜色的球
src/main/java/L0488_ZumaGame.java:115
↓ 1 callersMethodempty
如果队列为空,返回 true;否则,返回 false
src/main/java/L0232_ImplementQueueUsingStacks.java:90
↓ 1 callersMethodempty
()
src/main/java/L0225_ImplementStackUsingQueues.java:44
↓ 1 callersMethodfactorial
(int n)
src/main/java/L0060_PermutationSequence.java:39
↓ 1 callersMethodfindFirstPosition
(int[] nums, int target)
src/main/java/L0034_FindFirstAndLastPositionOfElementInSortedArray.java:53
↓ 1 callersMethodfindLastPosition
(int[] nums, int target)
src/main/java/L0034_FindFirstAndLastPositionOfElementInSortedArray.java:78
↓ 1 callersMethodfindLineEnd
(String[] words, int start, int maxWidth)
src/main/java/L0068_TextJustification.java:75
↓ 1 callersMethodfindMin
(TreeNode root)
src/main/java/L0450_DeleteNodeInBst.java:76
↓ 1 callersMethodfollow
(int userId)
src/main/java/L0355_DesignTwitter.java:49
↓ 1 callersMethodfollow
(int followerId, int followeeId)
src/main/java/L0355_DesignTwitter.java:107
↓ 1 callersMethodgcd
计算两个数的最大公约数(使用辗转相除法)
src/main/java/L0365_WaterAndJugProblem.java:68
↓ 1 callersMethodgenerateTreesHelper
(int start, int end)
src/main/java/L0095_UniqueBinarySearchTreesII.java:53
↓ 1 callersMethodgetDistance
(int[] p1, int[] p2)
src/main/java/L0447_NumberOfBoomerangs.java:59
↓ 1 callersMethodgetHeight
获取树的高度,如果不平衡返回 -1 采用自底向上的递归,避免重复计算高度
src/main/java/L0110_BalancedBinaryTree.java:58
↓ 1 callersMethodgetIntersectionNode
(ListNode headA, ListNode headB)
src/main/java/L0160_IntersectionOfTwoLinkedLists.java:52
↓ 1 callersMethodgetLeadingOnes
(int num)
src/main/java/L0393_UTF8Validation.java:80
↓ 1 callersMethodgetLeftHeight
获取树的左边界高度(从 1 开始计数)
src/main/java/L0222_CountCompleteTreeNodes.java:59
↓ 1 callersMethodgetRandom
使用蓄水池抽样算法 1. 遍历链表时,对于第 i 个节点,以 1/i 的概率选择它替换当前的结果 2. 这样可以保证每个节点被选中的概率相等,都是 1/n
src/main/java/L0382_LinkedListRandomNode.java:51
↓ 1 callersMethodgetRightHeight
获取树的右边界高度(从 1 开始计数)
src/main/java/L0222_CountCompleteTreeNodes.java:71
↓ 1 callersMethodgetSlope
(int[] point1, int[] point2)
src/main/java/L0149_MaxPointsOnALine.java:55
↓ 1 callersMethodhelper
(int num, StringBuilder sb)
src/main/java/L0273_IntegerToEnglishWords.java:56
↓ 1 callersMethodhelper
(long n)
src/main/java/L0397_IntegerReplacement.java:38
↓ 1 callersMethodinorder
中序遍历二叉搜索树 由于二叉搜索树的中序遍历是递增序列,所以第 k 个访问的节点就是第 k 小的元素
src/main/java/L0230_KthSmallestElementInBST.java:39
↓ 1 callersMethodinorder
中序遍历二叉树 在遍历过程中找到需要交换的两个节点
src/main/java/L0099_RecoverBinarySearchTree.java:83
↓ 1 callersMethodinorder
(TreeNode node)
src/main/java/L0501_FindModeInBinarySearchTree.java:51
↓ 1 callersMethodinvertTreeIterative
迭代解法 使用队列进行层序遍历,对每个节点交换其左右子树
src/main/java/L0226_InvertBinaryTree.java:93
↓ 1 callersMethodisBadVersion
(int version)
src/main/java/L0278_FirstBadVersion.java:55
↓ 1 callersMethodisFollowingByte
(int num)
src/main/java/L0393_UTF8Validation.java:100
↓ 1 callersMethodisMirror
判断两个子树是否互为镜像 两个子树互为镜像的条件: 1. 它们的根节点值相等 2. 每个树的左子树与另一个树的右子树镜像对称
src/main/java/L0101_SymmetricTree.java:76
↓ 1 callersMethodisOperator
(String token)
src/main/java/L0150_EvaluateReversePolishNotation.java:66
↓ 1 callersMethodisPalindrome
(String s, int start, int end)
src/main/java/L0131_PalindromePartitioning.java:54
↓ 1 callersMethodisValid
(char[][] board, int row, int col, char num)
src/main/java/L0037_SudokuSolver.java:50
↓ 1 callersMethodisValid
(String num, int i, int j)
src/main/java/L0306_AdditiveNumber.java:55
↓ 1 callersMethodisValid
检查在指定位置放置皇后是否有效 @param queens 每行皇后的列位置 @param row 要检查的行 @param col 要检查的列 @return 是否可以放置皇后
src/main/java/L0052_NQueensII.java:66
↓ 1 callersMethodisValidSegment
(String segment)
src/main/java/L0093_RestoreIPAddresses.java:74
↓ 1 callersMethodlargestRectangleArea
(int[] heights)
src/main/java/L0085_MaximalRectangle.java:65
↓ 1 callersMethodlongestIncreasingSubsequence
(int[] nums)
src/main/java/L0354_RussianDollEnvelopes.java:50
↓ 1 callersMethodmaxDiff
计算在 [left, right] 范围内,当前玩家与对手的最大分数差
src/main/java/L0486_PredictTheWinner.java:76
↓ 1 callersMethodmaxGain
计算从某个节点出发的最大路径和 @param node 当前节点 @return 从当前节点出发的最大路径和
src/main/java/L0124_BinaryTreeMaximumPathSum.java:41
↓ 1 callersMethodmaxProfitUnlimited
处理无限次交易的情况 只要有利润就可以交易
src/main/java/L0188_BestTimeToBuyAndSellStockIV.java:72
↓ 1 callersMethodmaxSumNoLargerThanK
(int[] arr, int k)
src/main/java/L0363_MaxSumOfRectangleNoLargerThanK.java:53
↓ 1 callersMethodmerge
(int[] nums, int left, int mid, int right)
src/main/java/L0493_ReversePairs.java:55
↓ 1 callersMethodmerge
(int[] nums1, int[] nums2)
src/main/java/L0321_CreateMaximumNumber.java:83
↓ 1 callersMethodmerge
(ListNode l1, ListNode l2)
src/main/java/L0148_SortList.java:54
↓ 1 callersMethodmergeSort
(int[] nums, int left, int right)
src/main/java/L0493_ReversePairs.java:32
↓ 1 callersMethodmergeTwoLists
(ListNode list1, ListNode list2)
src/main/java/L0021_MergeTwoSortedLists.java:10
↓ 1 callersMethodnext
()
src/main/java/L0341_FlattenNestedListIterator.java:52
↓ 1 callersMethodpartition
(int[] nums, int left, int right)
src/main/java/L0215_KthLargestElementInAnArray.java:48
↓ 1 callersMethodpeek
返回队列开头的元素 如果 stackOut 为空,将 stackIn 中的所有元素倒序压入 stackOut
src/main/java/L0232_ImplementQueueUsingStacks.java:77
↓ 1 callersMethodpick
()
src/main/java/L0497_RandomPointInNonOverlappingRectangles.java:66
↓ 1 callersMethodpop
()
src/main/java/L0225_ImplementStackUsingQueues.java:36
↓ 1 callersMethodpost
(int tweetId, int time)
src/main/java/L0355_DesignTwitter.java:57
↓ 1 callersMethodpostorderRecursive
(TreeNode node, List<Integer> result)
src/main/java/L0145_BinaryTreePostorderTraversal.java:56
↓ 1 callersMethodpreorderRecursive
(TreeNode node, List<Integer> result)
src/main/java/L0144_BinaryTreePreorderTraversal.java:56
↓ 1 callersMethodprintMatrix
(char[][] matrix)
src/main/java/L0085_MaximalRectangle.java:130
↓ 1 callersMethodqueryTree
(SegmentTreeNode node, int left, int right)
src/main/java/L0307_RangeSumQueryMutable.java:94
↓ 1 callersMethodquickPow
快速幂算法计算 (x^n) % MOD
src/main/java/L0372_SuperPow.java:54
↓ 1 callersMethodquickSelect
(int[] nums, int left, int right, int k)
src/main/java/L0215_KthLargestElementInAnArray.java:29
↓ 1 callersMethodremove
(int val)
src/main/java/L0381_RandomizedCollectionWithDuplicates.java:38
↓ 1 callersMethodremoveNum
(int num)
src/main/java/L0480_SlidingWindowMedian.java:47
↓ 1 callersMethodremoveTail
()
src/main/java/L0460_LFUCache.java:103
↓ 1 callersMethodremoveTail
()
src/main/java/L0146_LRUCache.java:124
↓ 1 callersMethodreset
()
src/main/java/L0384_ShuffleArray.java:24
← previousnext →501–600 of 1,125, ranked by callers