Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/PengFTang/Algorithms-in-Java
/ functions
Functions
116 in github.com/PengFTang/Algorithms-in-Java
⨍
Functions
116
◇
Types & classes
31
↓ 5 callers
Method
get
(int key)
Hashing/LRUCache.java:35
↓ 4 callers
Method
rangeSum
(int i, int j)
SegmentTree/RangeSumMutable.java:68
↓ 3 callers
Method
convert
(String str)
Tree/TreeNode.java:39
↓ 3 callers
Method
set
(int key, int value)
Hashing/LRUCache.java:41
↓ 3 callers
Method
sqrt
implements sqrt using a basic binary search strategy
Math/Sqrt.java:14
↓ 3 callers
Method
swap
(int[] nums, int a, int b)
Sorting/QuickSort.java:29
↓ 3 callers
Method
updateItem
(int i, int val)
SegmentTree/RangeSumMutable.java:55
↓ 3 callers
Method
updateStack
(Deque<Character> op, Deque<Integer> nums)
Stack/BasicCalculator.java:52
↓ 2 callers
Method
addNode
(ListNode newNode)
Hashing/LRUCache.java:65
↓ 2 callers
Method
coinChangeIterative
an iterative implementation @param coins @param amount @return
DynamicProgramming/CoinChange.java:17
↓ 2 callers
Method
compute
(int a, int b, char operator)
Stack/BasicCalculator.java:61
↓ 2 callers
Method
detachNode
(ListNode node)
Hashing/LRUCache.java:77
↓ 2 callers
Method
getLISbottomup
()
DynamicProgramming/LIS.java:13
↓ 2 callers
Method
heapSort
(int[] arr)
InplaceMerge.java:32
↓ 2 callers
Method
insert
(int[] arr, int L, int lo, int hi)
InplaceMerge.java:95
↓ 2 callers
Method
listPrimes
(int n)
Math/Prime.java:21
↓ 2 callers
Method
merge
(int[] arr, int[] arrToMerge, int left, int mid, int right)
Sorting/MergeSort.java:36
↓ 2 callers
Method
moveToHead
(ListNode node)
Hashing/LRUCache.java:56
↓ 2 callers
Method
printArray
(int[] arr)
Sorting/QuickSort.java:35
↓ 2 callers
Method
rangeMin
(int start, int end)
SegmentTree/RangeMin.java:35
↓ 2 callers
Method
sink
(int[] arr, int index, int N)
InplaceMerge.java:48
↓ 2 callers
Method
sink
(int[] arr, int index, int N)
Sorting/HeapSort.java:23
↓ 2 callers
Method
swap
(int[] arr, int index1, int index2)
InplaceMerge.java:57
↓ 2 callers
Method
swap
(int[] arr, int index1, int index2)
Sorting/HeapSort.java:33
↓ 2 callers
Method
toString
()
SegmentTree/RangeSumMutable.java:19
↓ 1 callers
Method
GCD
(int a, int b)
Math/GCD.java:8
↓ 1 callers
Method
LIP
(int[][] matrix)
Graph/LongestIncreasingPath.java:15
↓ 1 callers
Method
backtrack
(List<String> res, String parenthesis, int left, int right)
Backtracking/GenerateParenthesis.java:12
↓ 1 callers
Method
bfs
(List<TreeNode<T>> nodes, List<List<T>> res)
Tree/BFS.java:53
↓ 1 callers
Method
calculate
(String str)
Stack/BasicCalculator.java:8
↓ 1 callers
Method
constructSegmentTree
(int[] sums, int lo, int hi, TreeNode root)
SegmentTree/RangeSumMutable.java:46
↓ 1 callers
Method
countPrimes
(int n)
Math/Prime.java:38
↓ 1 callers
Method
create
(String str)
Tree/TreeNode.java:14
↓ 1 callers
Method
divide
Key idea: keep doubling divisor till no larger than dividend, then subtract amplified divisor from dividend till dividend is small than original divis
Math/Divide.java:25
↓ 1 callers
Method
draw
(int[][] G, int E, int colors, int[] colored, int v_id)
Backtracking/GraphColoring.java:14
↓ 1 callers
Method
generateTree
(int[] nums, int lo, int hi)
SegmentTree/RangeMin.java:55
↓ 1 callers
Method
heapSort
(int[] arr)
Sorting/HeapSort.java:7
↓ 1 callers
Method
heapify
(int[] arr)
InplaceMerge.java:42
↓ 1 callers
Method
heapify
(int[] arr)
Sorting/HeapSort.java:17
↓ 1 callers
Method
helper
computes the longest increasing path starting from a given locatioin (i, j) @param matrix extended matrix @param longest LIP value matrix @param dirs
Graph/LongestIncreasingPath.java:66
↓ 1 callers
Method
helper
(int n, int k, int start, List<Integer> list, List<List<Integer>> res)
DFS/Combinations.java:12
↓ 1 callers
Method
helper
(TreeNode root1, TreeNode root2)
Tree/SymmetricTree.java:32
↓ 1 callers
Method
helper
(int[] coins, int rem, int[] count)
DynamicProgramming/CoinChange.java:45
↓ 1 callers
Method
isSafe
(int[][] G, int E, int[] colored, int v_id, int color)
Backtracking/GraphColoring.java:6
↓ 1 callers
Method
isSafe
checks if placing Q at [row][col] is safe @param board 2D board char array @param N size of board @param row current row working on @param col curren
Backtracking/N_Queens.java:35
↓ 1 callers
Method
isValidSerialization
(String preorder)
Tree/ValidPreorderSerialization.java:54
↓ 1 callers
Method
iterativeBFS
(TreeNode<T> root)
Tree/BFS.java:16
↓ 1 callers
Method
lps
(String pattern)
Searching/KMP.java:29
↓ 1 callers
Method
maxArea
(int[] height)
Two-Pointer/ContainerWithMostWater.java:3
↓ 1 callers
Method
merge
(int[] arr1, int[] arr2)
InplaceMerge.java:14
↓ 1 callers
Method
mergeSort
(int[] arr, int[] arrToMerge, int left, int right)
Sorting/MergeSort.java:25
↓ 1 callers
Method
mergeSortBottomUp
(int[] arr)
Sorting/MergeSort.java:7
↓ 1 callers
Method
mergeSortTopDown
(int[] arr)
Sorting/MergeSort.java:21
↓ 1 callers
Method
quickSort
(int[] nums)
Sorting/QuickSort.java:8
↓ 1 callers
Method
range
(int i, int j, int lo, int hi, TreeNode root)
SegmentTree/RangeSumMutable.java:72
↓ 1 callers
Method
recursiveBFS
(TreeNode<T> root)
Tree/BFS.java:42
↓ 1 callers
Method
removeNode
(ListNode node)
Hashing/LRUCache.java:72
↓ 1 callers
Method
rotate
(int[] nums, int k)
Math/RotateArray.java:2
↓ 1 callers
Method
search
(String str, String pattern)
Searching/KMP.java:10
↓ 1 callers
Method
solution
(int[][] G)
Backtracking/GraphColoring.java:29
↓ 1 callers
Method
solve
solves the N-Queen problem by moving forward column by column if safe and moving backward if not @param board 2D board char array @param N size of bo
Backtracking/N_Queens.java:57
↓ 1 callers
Method
toString
(TreeNode root)
SegmentTree/RangeMin.java:15
↓ 1 callers
Method
updateSegmentTree
(int i, int lo, int hi, int diff, TreeNode root)
SegmentTree/RangeSumMutable.java:60
Method
LIS
(int[] arr)
DynamicProgramming/LIS.java:8
Method
LRUCache
(int capacity)
Hashing/LRUCache.java:26
Method
ListNode
(int val)
Hashing/LRUCache.java:16
Method
ListNode
(int x)
__Supports/ListNode.java:6
Method
RangeMin
(int[] nums)
SegmentTree/RangeMin.java:28
Method
RangeSumMutable
(int[] nums)
SegmentTree/RangeSumMutable.java:35
Method
TreeNode
(T x)
Tree/TreeNode.java:10
Method
TreeNode
(int val)
SegmentTree/RangeSumMutable.java:16
Method
TreeNode
(int x)
SegmentTree/RangeMin.java:12
Method
TreeNode
(int key, int val)
__Supports/TreeNode.java:10
Method
coinChangeRecursive
a recursive implementation @param coins @param amount @return
DynamicProgramming/CoinChange.java:41
Method
combine
(int n, int k)
DFS/Combinations.java:6
Method
constructLinkedListFromString
(String str)
__Supports/ListNode.java:8
Method
constructTreeFromString
(String str)
__Supports/TreeNode.java:18
Method
detectCycle
The following code solves the problem of detecting the staring node of a cycle in a linked list if there is one. The key idea is to use a slow and a f
Two-Pointer/LinkedLisCycle.java:8
Method
generateParenthesis
(int n)
Backtracking/GenerateParenthesis.java:7
Method
inorderTraversal
(TreeNode root)
__Supports/TreeNode.java:56
Method
isPrime
(int n)
Math/Prime.java:13
Method
isSymmetric
(int[][] matrix)
__Supports/Methods.java:58
Method
isSymmetricIterative
(TreeNode root)
Tree/SymmetricTree.java:5
Method
isSymmetricRecursive
(TreeNode root)
Tree/SymmetricTree.java:28
Method
main
(String[] args)
InplaceMerge.java:163
Method
main
(String[] args)
Sorting/MergeSort.java:71
Method
main
(String[] args)
Sorting/QuickSort.java:40
Method
main
(String[] args)
Sorting/HeapSort.java:39
Method
main
(String[] args)
Graph/LongestIncreasingPath.java:81
Method
main
(String[] args)
Tree/BFS.java:73
Method
main
(String[] args)
Tree/ValidPreorderSerialization.java:32
Method
main
(String[] args)
Backtracking/GraphColoring.java:44
Method
main
(String[] args)
Backtracking/N_Queens.java:11
Method
main
(String[] args)
Stack/BasicCalculator.java:76
Method
main
(String[] args)
Math/GCD.java:36
Method
main
(String[] args)
Math/Sqrt.java:39
Method
main
(String[] args)
Math/RotateArray.java:20
Method
main
(String[] args)
Math/Divide.java:50
Method
main
(String[] args)
Math/Prime.java:42
Method
main
(String[] args)
SegmentTree/RangeSumMutable.java:81
next →
1–100 of 116, ranked by callers