Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/LjyYano/LeetCode
/ functions
Functions
1,125 in github.com/LjyYano/LeetCode
⨍
Functions
1,125
◇
Types & classes
459
↓ 3 callers
Method
sortedListToBST
(ListNode head)
src/main/java/L0109_ConvertSortedListToBinarySearchTree.java:64
↓ 3 callers
Method
splitArray
(int[] nums, int m)
src/main/java/L0410_SplitArrayLargestSum.java:27
↓ 3 callers
Method
subsetsWithDup
(int[] nums)
src/main/java/L0090_SubsetsII.java:25
↓ 3 callers
Method
swapPairs
(ListNode head)
src/main/java/L0024_SwapNodesInPairs.java:10
↓ 3 callers
Method
threeSum
(int[] nums)
src/main/java/L0015_ThreeSum.java:35
↓ 3 callers
Method
threeSumClosest
(int[] nums, int target)
src/main/java/L0016_ThreeSumClosest.java:21
↓ 3 callers
Method
titleToNumber
(String columnTitle)
src/main/java/L0171_ExcelSheetColumnNumber.java:35
↓ 3 callers
Method
toHex
(int num)
src/main/java/L0405_ConvertANumberToHexadecimal.java:25
↓ 3 callers
Method
toString
()
src/main/java/L0108_ConvertSortedArrayToBinarySearchTree.java:47
↓ 3 callers
Method
topKFrequent
(int[] nums, int k)
src/main/java/L0347_TopKFrequentElements.java:27
↓ 3 callers
Method
totalNQueens
(int n)
src/main/java/L0052_NQueensII.java:23
↓ 3 callers
Method
trailingZeroes
(int n)
src/main/java/L0172_FactorialTrailingZeroes.java:27
↓ 3 callers
Method
twoSum
使用哈希表存储遍历过的数字及其索引,实现 O(n) 的时间复杂度 @param nums 输入数组 @param target 目标值 @return 满足条件的下标数组 @throws IllegalArgumentException 无解时抛出异常
src/main/java/L0001_TwoSum.java:21
↓ 3 callers
Method
twoSum
(int[] numbers, int target)
src/main/java/L0167_TwoSumII.java:37
↓ 3 callers
Method
validIPAddress
(String queryIP)
src/main/java/L0468_ValidateIPAddress.java:32
↓ 3 callers
Method
validUtf8
(int[] data)
src/main/java/L0393_UTF8Validation.java:42
↓ 3 callers
Method
verifyResult
(Node original, Node copy)
src/main/java/L0138_CopyListWithRandomPointer.java:105
↓ 3 callers
Method
wiggleMaxLength
(int[] nums)
src/main/java/L0376_WiggleSubsequence.java:33
↓ 3 callers
Method
wordBreak
(String s, List<String> wordDict)
src/main/java/L0139_WordBreak.java:36
↓ 3 callers
Method
wordBreak
(String s, List<String> wordDict)
src/main/java/L0140_WordBreakII.java:35
↓ 3 callers
Method
wordPattern
(String pattern, String s)
src/main/java/L0290_WordPattern.java:31
↓ 3 callers
Method
zigzagLevelOrder
(TreeNode root)
src/main/java/L0103_BinaryTreeZigzagLevelOrderTraversal.java:66
↓ 2 callers
Method
PredictTheWinner
动态规划解法 dp[i][j] 表示在 nums[i..j] 范围内,当前玩家与另一个玩家的分数之差的最大值
src/main/java/L0486_PredictTheWinner.java:37
↓ 2 callers
Method
add
(String x)
src/main/java/L0399_EvaluateDivision.java:54
↓ 2 callers
Method
addBinary
(String a, String b)
src/main/java/L0067_AddBinary.java:22
↓ 2 callers
Method
addDigits
数学方法:使用数根的概念 数根是将一个数的各个位上的数字相加,得到的数再继续各位相加,直到得到一个一位数为止 对于一个非负整数 n,它的数根 dr(n) 满足: dr(n) = 0,如果 n = 0 dr(n) = 9,如果 n ≠ 0 且 n mod 9 = 0 dr(n) = n mod 9,如
src/main/java/L0258_AddDigits.java:31
↓ 2 callers
Method
addNode
(Node node)
src/main/java/L0460_LFUCache.java:87
↓ 2 callers
Method
addNum
(int num)
src/main/java/L0480_SlidingWindowMedian.java:36
↓ 2 callers
Method
addToHead
(Node node)
src/main/java/L0146_LRUCache.java:104
↓ 2 callers
Method
binaryTreePaths
(TreeNode root)
src/main/java/L0257_BinaryTreePaths.java:44
↓ 2 callers
Method
calcEquation
(List<List<String>> equations, double[] values, List<List<String>> queries)
src/main/java/L0399_EvaluateDivision.java:105
↓ 2 callers
Method
calculateMinimumHP
(int[][] dungeon)
src/main/java/L0174_DungeonGame.java:28
↓ 2 callers
Method
canCompleteCircuit
(int[] gas, int[] cost)
src/main/java/L0134_GasStation.java:42
↓ 2 callers
Method
canCross
(int[] stones)
src/main/java/L0403_FrogJump.java:27
↓ 2 callers
Method
canFinish
(int numCourses, int[][] prerequisites)
src/main/java/L0207_CourseSchedule.java:31
↓ 2 callers
Method
candy
(int[] ratings)
src/main/java/L0135_Candy.java:28
↓ 2 callers
Method
combinationSum2
(int[] candidates, int target)
src/main/java/L0040_CombinationSumII.java:32
↓ 2 callers
Method
combinationSum4
(int[] nums, int target)
src/main/java/L0377_CombinationSumIV.java:38
↓ 2 callers
Method
combine
(int n, int k)
src/main/java/L0077_Combinations.java:23
↓ 2 callers
Method
computeArea
(int ax1, int ay1, int ax2, int ay2, int bx1, int by1, int bx2, int by2)
src/main/java/L0223_RectangleArea.java:21
↓ 2 callers
Method
construct
(int[][] grid)
src/main/java/L0427_ConstructQuadTree.java:65
↓ 2 callers
Method
countBattleships
(char[][] board)
src/main/java/L0419_BattleshipsInABoard.java:20
↓ 2 callers
Method
countBits
动态规划解法 对于一个数 x,其二进制中 1 的个数与 x/2 的二进制中 1 的个数有关 如果 x 是偶数,则 x 中 1 的个数与 x/2 相同 如果 x 是奇数,则 x 中 1 的个数比 x/2 多 1 时间复杂度:O(n) 空间复杂度:O(1),不包括存储答案的空间
src/main/java/L0338_CountingBits.java:42
↓ 2 callers
Method
createList
(int[] arr)
src/main/java/L0083_RemoveDuplicatesFromSortedList.java:53
↓ 2 callers
Method
createList
(int[] arr)
src/main/java/L0082_RemoveDuplicatesFromSortedListII.java:66
↓ 2 callers
Method
dec
(String key)
src/main/java/L0432_AllOne.java:85
↓ 2 callers
Method
deleteNode
由于无法访问头节点,我们只能访问要删除的节点 我们可以通过将下一个节点的值复制到当前节点,然后删除下一个节点来实现
src/main/java/L0237_DeleteNodeInALinkedList.java:48
↓ 2 callers
Method
deleteNode
(TreeNode root, int key)
src/main/java/L0450_DeleteNodeInBst.java:37
↓ 2 callers
Method
deserialize
(String data)
src/main/java/L0449_SerializeAndDeserializeBst.java:52
↓ 2 callers
Method
diffWaysToCompute
使用分治法计算所有可能的结果 遍历字符串中的每个运算符,将表达式分成左右两部分 递归计算左右两部分的所有可能结果,然后根据运算符组合结果
src/main/java/L0241_DifferentWaysToAddParentheses.java:41
↓ 2 callers
Method
expandAroundCenter
从中心向两边扩展,寻找最长回文子串 @param s 原始字符串 @param left 左边界 @param right 右边界 @return 以 left 和 right 为中心的最长回文子串的长度
src/main/java/L0005_LongestPalindromicSubstring.java:43
↓ 2 callers
Method
findAllConcatenatedWordsInADict
(String[] words)
src/main/java/L0472_ConcatenatedWords.java:23
↓ 2 callers
Method
findAnagrams
(String s, String p)
src/main/java/L0438_FindAllAnagramsInAString.java:26
↓ 2 callers
Method
findDiagonalOrder
模拟对角线遍历 关键点: 1. 对角线方向交替变化(右上、左下) 2. 遇到边界时改变方向
src/main/java/L0498_DiagonalTraverse.java:29
↓ 2 callers
Method
findDisappearedNumbers
(int[] nums)
src/main/java/L0448_FindAllNumbersDisappearedInAnArray.java:24
↓ 2 callers
Method
findDuplicate
使用快慢指针(Floyd 判圈算法)解决 将数组看作一个链表,nums[i] 表示下一个节点的下标 由于有重复数字,所以一定会形成环 找到环的入口就是重复的数字
src/main/java/L0287_FindTheDuplicateNumber.java:36
↓ 2 callers
Method
findFrequentTreeSum
后序遍历 + 哈希表
src/main/java/L0508_MostFrequentSubtreeSum.java:32
↓ 2 callers
Method
findItinerary
使用 Hierholzer 算法重建行程 时间复杂度:O(m log m),其中 m 是机票的数量 空间复杂度:O(m),其中 m 是机票的数量
src/main/java/L0332_ReconstructItinerary.java:37
↓ 2 callers
Method
findKthLargest
(int[] nums, int k)
src/main/java/L0215_KthLargestElementInAnArray.java:24
↓ 2 callers
Method
findKthNumber
(int n, int k)
src/main/java/L0440_KthSmallestInLexicographicalOrder.java:17
↓ 2 callers
Method
findLadders
(String beginWord, String endWord, List<String> wordList)
src/main/java/L0126_WordLadderII.java:38
↓ 2 callers
Method
findMaxForm
(String[] strs, int m, int n)
src/main/java/L0474_OnesAndZeroes.java:9
↓ 2 callers
Method
findMaximizedCapital
贪心 + 优先队列(堆) 按照资本排序,每次选择当前可以做的项目中利润最大的
src/main/java/L0502_IPO.java:47
↓ 2 callers
Method
findMode
中序遍历 BST 利用 BST 的性质,中序遍历是有序的,相同的值会连续出现
src/main/java/L0501_FindModeInBinarySearchTree.java:41
↓ 2 callers
Method
findPeakElement
(int[] nums)
src/main/java/L0162_FindPeakElement.java:29
↓ 2 callers
Method
findRelativeRanks
排序 + 哈希表
src/main/java/L0506_RelativeRanks.java:39
↓ 2 callers
Method
findRepeatedDnaSequences
使用滑动窗口和哈希集合查找重复的 DNA 序列
src/main/java/L0187_RepeatedDnaSequences.java:34
↓ 2 callers
Method
findWords
(char[][] board, String[] words)
src/main/java/L0212_WordSearchII.java:47
↓ 2 callers
Method
flatten
(Node head)
src/main/java/L0430_FlattenAMultilevelDoublyLinkedList.java:47
↓ 2 callers
Method
fourSumCount
(int[] nums1, int[] nums2, int[] nums3, int[] nums4)
src/main/java/L0454_FourSumII.java:31
↓ 2 callers
Method
gameOfLife
(int[][] board)
src/main/java/L0289_GameOfLife.java:23
↓ 2 callers
Method
generateTrees
(int n)
src/main/java/L0095_UniqueBinarySearchTreesII.java:46
↓ 2 callers
Method
getBucketId
(long num, long w)
src/main/java/L0220_ContainsDuplicateIII.java:73
↓ 2 callers
Method
getInteger
()
src/main/java/L0341_FlattenNestedListIterator.java:86
↓ 2 callers
Method
getList
()
src/main/java/L0341_FlattenNestedListIterator.java:90
↓ 2 callers
Method
getMaxRepetitions
(String s1, int n1, String s2, int n2)
src/main/java/L0466_CountTheRepetitions.java:29
↓ 2 callers
Method
getMedian
(int k)
src/main/java/L0480_SlidingWindowMedian.java:84
↓ 2 callers
Method
getRandom
()
src/main/java/L0380_RandomizedSet.java:56
↓ 2 callers
Method
getRandom
()
src/main/java/L0381_RandomizedCollectionWithDuplicates.java:69
↓ 2 callers
Method
getSkyline
(int[][] buildings)
src/main/java/L0218_TheSkylineProblem.java:41
↓ 2 callers
Method
greater
(int[] nums1, int i, int[] nums2, int j)
src/main/java/L0321_CreateMaximumNumber.java:99
↓ 2 callers
Method
hammingDistance
(int x, int y)
src/main/java/L0461_HammingDistance.java:25
↓ 2 callers
Method
hasCycle
(ListNode head)
src/main/java/L0141_LinkedListCycle.java:39
↓ 2 callers
Method
hasNext
()
src/main/java/L0341_FlattenNestedListIterator.java:61
↓ 2 callers
Method
insertionSortList
(ListNode head)
src/main/java/L0147_InsertionSortList.java:34
↓ 2 callers
Method
intersect
(int[] nums1, int[] nums2)
src/main/java/L0350_IntersectionOfTwoArraysII.java:33
↓ 2 callers
Method
intersection
(int[] nums1, int[] nums2)
src/main/java/L0349_IntersectionOfTwoArrays.java:24
↓ 2 callers
Method
invertTree
递归解法 对于每个节点,交换其左右子树
src/main/java/L0226_InvertBinaryTree.java:72
↓ 2 callers
Method
isAnagram
使用数组记录字符出现次数 由于题目说明只包含小写字母,可以使用一个长度为 26 的数组
src/main/java/L0242_ValidAnagram.java:26
↓ 2 callers
Method
isHappy
哈希集合解法 使用哈希集合记录已经出现过的数字,如果出现重复说明进入循环
src/main/java/L0202_HappyNumber.java:38
↓ 2 callers
Method
isHappyOptimized
快慢指针解法(推荐) 类似于链表找环,使用快慢指针检测循环
src/main/java/L0202_HappyNumber.java:66
↓ 2 callers
Method
isInteger
()
src/main/java/L0341_FlattenNestedListIterator.java:82
↓ 2 callers
Method
isNumber
(String s)
src/main/java/L0065_ValidNumber.java:43
↓ 2 callers
Method
isPalindrome
判断字符串的子串是否是回文
src/main/java/L0336_PalindromePairs.java:94
↓ 2 callers
Method
isValidSudoku
(char[][] board)
src/main/java/L0036_ValidSudoku.java:49
↓ 2 callers
Method
isVowel
(char c)
src/main/java/L0345_ReverseVowelsOfString.java:55
↓ 2 callers
Method
jump
(int[] nums)
src/main/java/L0045_JumpGameII.java:23
↓ 2 callers
Method
kthSmallest
(TreeNode root, int k)
src/main/java/L0230_KthSmallestElementInBST.java:30
↓ 2 callers
Method
ladderLength
(String beginWord, String endWord, List<String> wordList)
src/main/java/L0127_WordLadder.java:34
↓ 2 callers
Method
largestBSTSubtree
查找最大 BST 子树 时间复杂度:O(n),其中 n 是树中节点的数量 空间复杂度:O(h),其中 h 是树的高度,用于递归调用栈
src/main/java/L0333_LargestBSTSubtree.java:51
← previous
next →
301–400 of 1,125, ranked by callers