Skip to content

[pull] master from TheAlgorithms:master #53

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1,482 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1482 commits
Select commit Hold shift + click to select a range
8d88349
Add tests, remove `main` in `EulerMethod` (#5771)
Hardvan Oct 14, 2024
bcf4034
Add tests, remove `main` in `WordBoggle` (#5782)
Hardvan Oct 14, 2024
1dfa2e5
feat: Add `ConvexHull` new algorithm with Junit tests (#5789)
Hardvan Oct 14, 2024
6ef1f7c
Add tests, remove `main` in `ThreeSumProblem` (#5781)
Hardvan Oct 14, 2024
3af4cfd
Add SumOfOddNumbers (#5730)
BYT-Bender Oct 14, 2024
8886e09
style: include `OCP_OVERLY_CONCRETE_PARAMETER` (#5833)
vil02 Oct 14, 2024
30504c1
Add `MinStackUsingSingleStack` algorithm (#5759)
Hardvan Oct 15, 2024
776946e
feat: Add `MinStackUsingTwoStacks` new algorithm with Junit tests (#5…
Hardvan Oct 15, 2024
adf21ab
feat: Add `CelebrityFinder` new algorithm with Junit tests (#5756)
Hardvan Oct 15, 2024
32bf532
refactor: Enhance docs, add more tests in `ArrayCombination` (#5841)
Hardvan Oct 15, 2024
be70801
feat: add bresenham's line drawing algorithm (#5779)
saahil-mahato Oct 15, 2024
9f5478f
Fix a wrong comment in the tree postorder traversal (#5774)
radhikashah0499 Oct 15, 2024
640d823
Add tests, remove main in PalindromePrime (#5773)
Hardvan Oct 15, 2024
f1aceea
Enhance class & function documentation in `CircularBuffer.java` (#5582)
Hardvan Oct 15, 2024
9eff71b
Add tests for `ConvolutionFFT` (#5767)
Hardvan Oct 15, 2024
7e11e9b
Add tests for `EulerMethod` (#5769)
Hardvan Oct 15, 2024
3e10f8f
Add tests, remove `main`, fix bug in `Sparsity` (#5780)
Hardvan Oct 15, 2024
b35f98a
Add Rail Fence Cipher (#5761)
Krounosity Oct 15, 2024
2a518e3
Add `Abbreviation` algorithm (#5790)
Hardvan Oct 15, 2024
a537654
Add `StockProfitCalculator` (#5793)
Hardvan Oct 16, 2024
dfff8d9
Add `MinimumWaitingTime` algorithm (#5794)
Hardvan Oct 16, 2024
169a01e
Enhance documentation in `FractionalKnapsack` (#5795)
Hardvan Oct 16, 2024
33dee07
Add `AssignmentUsingBitmask` algorithm (#5792)
Hardvan Oct 16, 2024
e499d3b
Bump org.mockito:mockito-core from 5.14.1 to 5.14.2 (#5856)
dependabot[bot] Oct 19, 2024
7f21f2d
Bump org.junit:junit-bom from 5.11.2 to 5.11.3 (#5934)
dependabot[bot] Oct 22, 2024
cff79d4
Bump org.junit.jupiter:junit-jupiter from 5.11.2 to 5.11.3 (#5935)
dependabot[bot] Oct 22, 2024
ae37b5f
Bump com.github.spotbugs:spotbugs-maven-plugin from 4.8.6.4 to 4.8.6.…
dependabot[bot] Oct 22, 2024
c440c1d
Bump org.junit.jupiter:junit-jupiter-api from 5.11.2 to 5.11.3 (#5937)
dependabot[bot] Oct 22, 2024
69a1424
Add StalinSort (#5738)
anant-jain01 Oct 22, 2024
efb16c1
Add edge case to handle negative rod length in RodCutting algorithm (…
Chiefpatwal Oct 22, 2024
ef72b1e
Remove main function, improve docstring, add JUnit tests for `Krishna…
Tanmay-Singh3004 Oct 22, 2024
0bb22fb
Remove main function from GCD class (#5828)
Tanmay-Singh3004 Oct 22, 2024
5a1f681
Optimize BreadthFirstSearch implementation (#5882)
manishraj27 Oct 22, 2024
c56d282
Add DiffieHellman and MonoAlphabetic (#5508)
riti2601 Oct 22, 2024
87030af
Add BaconianCipher (#5932)
bennybebo Oct 22, 2024
0f8cda9
Add the retrieval of minimum and maximum element from stack at O(1) (…
S-M-J-I Oct 22, 2024
6006025
Add palindrome checker using stack (#5887)
S-M-J-I Oct 22, 2024
2f9f75a
Add StronglyConnectedComponentOptimized (#5825)
vickygit-commits Oct 23, 2024
aaaf96b
Enhance docs, add more tests in `IntegerToEnglish` (#5924)
Hardvan Oct 23, 2024
7bbdae5
Enhance docs, add more tests in `RomanToInteger` (#5926)
Hardvan Oct 23, 2024
d85f192
Enhance docs, add more tests in `OctalToBinary` (#5942)
Hardvan Oct 23, 2024
757d10c
Remove 'main', add tests in `TurkishToLatinConversion` (#5944)
Hardvan Oct 23, 2024
03fe106
Enhance docs, add more tests in `PhoneticAlphabetConverter` (#5943)
Hardvan Oct 23, 2024
a8a1aba
Enhance docs in `UnitConversions` (#5945)
Hardvan Oct 23, 2024
fef1f3c
Enhance docs, add more tests in `UnitsConverter` (#5946)
Hardvan Oct 23, 2024
730eb5a
Enhance docs, add more tests in `Bag` (#5947)
Hardvan Oct 23, 2024
8db9d10
Enhance docs, add more tests in `BloomFilter` (#5948)
Hardvan Oct 23, 2024
d868982
Enhance docs, add more tests in `MRUCache` (#5951)
Hardvan Oct 23, 2024
4f7957f
Enhance docs, add more tests in `DynamicArray` (#5952)
Hardvan Oct 23, 2024
520e464
Enhance docs, add more tests in `FordFulkerson` (#5953)
Hardvan Oct 23, 2024
b64e53c
Enhance docs, add more tests in `LRUCache` (#5950)
Hardvan Oct 23, 2024
be0b1d5
Enhance docs, add more tests in `LFUCache` (#5949)
Hardvan Oct 23, 2024
1b51e3e
Enhance docs, add more tests in `JohnsonsAlgorithm` (#5964)
Hardvan Oct 24, 2024
3a9a2c4
Enhance docs, add more tests in `HamiltonianCycle` (#5963)
Hardvan Oct 24, 2024
13be250
Enhance docs, add tests in KahnsAlgorithm (#5965)
Hardvan Oct 24, 2024
578e5a7
Enhance docs, add more tests in `Kosaraju` (#5966)
Hardvan Oct 24, 2024
0feb416
Enhance docs, add tests in `Kruskal` (#5967)
Hardvan Oct 24, 2024
5246f63
Enhance docs, remove `main`. add more tests (#5925)
Hardvan Oct 24, 2024
6f489e5
Enhance docs, add tests in `QuickSortLinkedList` (#5998)
Hardvan Oct 25, 2024
fed2d4b
Enhance docs, remove `main`, add tests in `MergeSortedSingl… (#5997)
Hardvan Oct 25, 2024
c8e9e74
Enhance docs, remove `main`, add tests in `MergeSortedArray… (#5996)
Hardvan Oct 25, 2024
cd87dc3
Enhance docs, add tests in `CreateAndDetectLoop` (#5993)
Hardvan Oct 25, 2024
3a8b04a
Enhance docs, add tests in MergeKSortedLinkedList (#5995)
Hardvan Oct 25, 2024
f3e0900
Enhance docs, add tests in `CursorLinkedList` (#5994)
Hardvan Oct 25, 2024
ed35374
Add to WordLadderTest corner case where wordList is empty (#5908)
jasonjyu Oct 25, 2024
c766c5e
Enhance docs, remove `main`, add tests in `CountSinglyLinke… (#5992)
Hardvan Oct 25, 2024
202879a
Enhance docs, add tests in `CircleLinkedList` (#5991)
Hardvan Oct 25, 2024
bc9645c
Add Sliding Window algorithm and tests for maximum sum of subarray (#…
Chiefpatwal Oct 25, 2024
e154a50
Fix typo in README.md (#5895)
devAlq Oct 25, 2024
3b2ba48
Add chinese remainder theorem (#5873)
SuprHUlk Oct 25, 2024
131e538
Add tests Generic Heap and add check null item (#5801)
lorduke22 Oct 25, 2024
cebefbc
Add tests Tower of Hanoi (#5736)
lorduke22 Oct 25, 2024
135fb08
Add `EgyptianFraction` algorithm (#5804)
Hardvan Oct 25, 2024
0f1dcbe
Add longest substring (#6007)
Chiefpatwal Oct 25, 2024
6684a69
Enhance docs, add tests in `StackOfLinkedList` (#6021)
Hardvan Oct 26, 2024
3a30e48
Enhance docs, add tests in `MinPriorityQueue` (#5986)
Hardvan Oct 26, 2024
e0ab1d3
Add `OptimalFileMerging` algorithm (#5805)
Hardvan Oct 26, 2024
c40eb8d
Add `KCenters` algorithm (#5806)
Hardvan Oct 26, 2024
6545688
Enhance docs, add tests in `CircularQueue` (#6015)
Hardvan Oct 26, 2024
2083d68
Enhance docs, add tests in `StackArrayList` (#6020)
Hardvan Oct 26, 2024
59a8e1d
Enhance docs, add tests in `SortedLinkedList` (#6014)
Hardvan Oct 26, 2024
92a04f8
Add `SlackTimeScheduling` algorithm (#5814)
Hardvan Oct 26, 2024
32cb98d
Add `MultiAgentScheduling` algorithm (#5816)
Hardvan Oct 26, 2024
7a539bc
Add `SelfAdjustingScheduling` algorithm (#5811)
Hardvan Oct 26, 2024
ecf4c37
Add `ProportionalFairScheduling` algorithm (#5812)
Hardvan Oct 26, 2024
acbce00
Add `FairShareScheduling` algorithm (#5815)
Hardvan Oct 26, 2024
1d19449
Add `AgingScheduling` algorithm (#5813)
Hardvan Oct 26, 2024
f3c2be2
Add `GangScheduling` algorithm (#5819)
Hardvan Oct 26, 2024
1e50706
Enhance docs, remove `main`, add tests in `StackArray` (#6019)
Hardvan Oct 26, 2024
ab9a552
Enhance docs, remove `main`, add tests in `NodeStack` (#6017)
Hardvan Oct 26, 2024
e1a0155
Enhance docs, add tests in `GenericArrayListQueue` (#6016)
Hardvan Oct 26, 2024
9dbdaf6
Enhance docs, add tests in `RotateSinglyLinkedLists` (#6011)
Hardvan Oct 26, 2024
82dee61
Add TokenBucket algorithm (#5840)
Hardvan Oct 26, 2024
788f4d8
Enhance docs, add more tests in `NonRepeatingNumberFinder` (#5843)
Hardvan Oct 26, 2024
009c2b3
Enhance docs, add more tests in `ArrayCombination` (#5842)
Hardvan Oct 26, 2024
6fc53ec
Add `IPv6Converter` algorithm (#5783)
Hardvan Oct 26, 2024
2ec4a1f
Enhance docs, add more tests in `NumberAppearingOddTimes` (#5857)
Hardvan Oct 26, 2024
b0cef5b
Enhance docs, add more tests in `NumbersDifferentSigns` (#5858)
Hardvan Oct 26, 2024
647a82a
Enhance docs, remove main, add tests in `ReverseStack` (#6018)
Hardvan Oct 26, 2024
ef7f2e9
Enhance docs, add more tests in `SingleBitOperations` (#5860)
Hardvan Oct 26, 2024
fb85a48
Enhance docs, add more tests in `TwosComplement` (#5862)
Hardvan Oct 26, 2024
8551add
Add `ModuloPowerOfTwo` algorithm (#5863)
Hardvan Oct 26, 2024
cdf509f
Add `OneBitDifference` algorithm (#5864)
Hardvan Oct 26, 2024
d572997
Add KthElementFinder algorithm (#5836)
Hardvan Oct 26, 2024
5d428d0
Add MedianFinder algorithm (#5837)
Hardvan Oct 26, 2024
e4ef072
Add `FirstDifferentBit` algorithm (#5866)
Hardvan Oct 26, 2024
70adf6f
Add midpoint ellipse algorithm (#5870)
saahil-mahato Oct 26, 2024
1577ec4
Add Catalan number (#5846)
UTSAVS26 Oct 26, 2024
871e4df
Add another method to check Pronic number (#5919)
TaranjeetSinghKalsi Oct 26, 2024
95875b0
Add another method to find kth number (#5918)
TaranjeetSinghKalsi Oct 26, 2024
9218212
Add a new method to check Perfect Square (#5917)
TaranjeetSinghKalsi Oct 26, 2024
7cf568c
Add midpoint circle algorithm (#5868)
saahil-mahato Oct 26, 2024
73416e2
Add `BandwidthAllocation` algorithm (#5807)
Hardvan Oct 26, 2024
f20f8d1
Enhance docs, add more tests in `AffineConverter` (#5915)
Hardvan Oct 26, 2024
04e421b
Add `SlidingWindowMaximum` algorithm (#5839)
Hardvan Oct 26, 2024
9e1dd86
Add `MergeKSortedArrays` algorithm (#5838)
Hardvan Oct 26, 2024
94daff0
Add `NextHigherSameBitCount` algorithm (#5865)
Hardvan Oct 26, 2024
196cc60
Add `AllConstruct` algorithm (#5791)
Hardvan Oct 26, 2024
3de202b
Enhance docs, add more tests in `ADFGVXCipher` (#5897)
Hardvan Oct 26, 2024
4d85c61
Enhance docs, add more tests in `RSA` (#5898)
Hardvan Oct 26, 2024
03777f8
Add MinSumKSizeSubarray algorithm (#6025)
rashi07dashore Oct 26, 2024
4e46002
Enhance docs, add more tests in `XORCipher` (#5900)
Hardvan Oct 26, 2024
687d251
Enhance docs, remove main, add tests in AnytoAny (#5916)
Hardvan Oct 26, 2024
709d977
Add `GenerateSubsets` algorithm (#5867)
Hardvan Oct 26, 2024
20239f2
Enhance docs, add tests in `LeftistHeap` (#5982)
Hardvan Oct 26, 2024
08bd1ff
Refactor `AtbashCipher`, add `ParameterizedTest` (#5808)
Hardvan Oct 26, 2024
8a18d45
Enhance docs, add tests in HeapElement (#5981)
Hardvan Oct 26, 2024
7e87e58
Enhance docs, add tests in `FibonacciHeap` (#5979)
Hardvan Oct 26, 2024
4ea3098
Enhance docs, add tests in `MajorityElement` (#5978)
Hardvan Oct 26, 2024
26f114c
Enhance docs, add tests in `LinearProbingHashMap` (#5977)
Hardvan Oct 26, 2024
84cd883
Enhance docs, add tests in `Intersection` (#5976)
Hardvan Oct 26, 2024
cd40dfb
Enhance docs, add tests in `HashMapCuckooHashing` (#5975)
Hardvan Oct 26, 2024
f5bc2c8
Add more tests in `HashMap` (#5974)
Hardvan Oct 26, 2024
bc6ea1e
Enhance docs, fix & add tests in `GenericHashMapUsingArrayL… (#5973)
Hardvan Oct 26, 2024
a78b15d
Enhance docs, add tests in MinHeap (#5985)
Hardvan Oct 26, 2024
474e0de
Enhance docs, add more tests in `WelshPowell` (#5971)
Hardvan Oct 26, 2024
c657138
Enhance docs, add tests in `TarjansAlgorithm` (#5970)
Hardvan Oct 26, 2024
a8b8420
Enhance docs, remove `main`. add more tests in `HexaDecimal… (#5923)
Hardvan Oct 26, 2024
cfa35a4
Add tests, fix `removeEdge` bug in `MatrixGraphs` (#5968)
Hardvan Oct 26, 2024
ce3dd01
Enhance docs, remove `main`. add more tests in `HexaDecimal… (#5922)
Hardvan Oct 26, 2024
62c9309
Enhance docs, remove `main`, add tests in `PrimMST` (#5969)
Hardvan Oct 26, 2024
b5a097c
Enhance docs, add more tests in `EndianConverter` (#5921)
Hardvan Oct 26, 2024
e6f7063
Cleanup combination and combination test (#5902)
lorduke22 Oct 26, 2024
8b60485
Enhance docs, add more tests in `Vigenere` (#5899)
Hardvan Oct 26, 2024
84522ba
Update README.md and add some description (#5886)
dynoayush Oct 26, 2024
3da16a7
Add LongestCommonPrefix (#5849)
TheDarkW3b Oct 26, 2024
985c1f9
Add Maximum Sliding Window algorithm (#5848)
pranayh24 Oct 26, 2024
d4a13fc
Enhance docs, remove `main`, add tests in `SearchSinglyLink… (#6012)
Hardvan Oct 26, 2024
a163816
Bump org.apache.maven.plugins:maven-checkstyle-plugin from 3.5.0 to 3…
dependabot[bot] Oct 26, 2024
a2e526b
Add tests for NodeStack (#6009)
lorduke22 Oct 27, 2024
bca8d0e
Add Longest Subarray With Sum Less Than or Equal to K algorithm (#6042)
Chiefpatwal Oct 27, 2024
5c9edf4
Bump com.puppycrawl.tools:checkstyle from 10.18.2 to 10.19.0 (#6055)
dependabot[bot] Oct 29, 2024
5e9d1dc
Bump org.apache.maven.plugins:maven-pmd-plugin from 3.25.0 to 3.26.0 …
dependabot[bot] Oct 29, 2024
d1c1e6b
Add uniform number counting algorithm (#6052)
mjk22071998 Oct 29, 2024
e94be71
Add `RandomScheduling` algorithm (#5810)
Hardvan Oct 29, 2024
b31bc86
Enhance docs, add tests in AVLTree (#6058)
Hardvan Oct 29, 2024
54567e2
Enhance docs, add more tests in `SwapAdjacentBits` (#5861)
Hardvan Oct 29, 2024
fd14016
Enhance docs, add more tests in `ReverseBits` (#5859)
Hardvan Oct 29, 2024
63d13b6
Enhance docs, add tests in `GenericHashMapUsingArray` (#5972)
Hardvan Oct 29, 2024
94fb92e
Enhance docs, add tests in `GenericHeap` (#5980)
Hardvan Oct 29, 2024
857d921
Enhance docs, add tests in `ReverseKGroup` (#5999)
Hardvan Oct 29, 2024
b14db81
Add shuffle array (#6026)
rashi07dashore Oct 29, 2024
03bb8ee
Enhance docs, add tests in `MaxHeap` (#5983)
Hardvan Oct 29, 2024
a676ebc
Bump com.puppycrawl.tools:checkstyle from 10.19.0 to 10.20.0 (#6076)
dependabot[bot] Oct 31, 2024
7b962a4
Add Exponential Moving Average Filter (#6075)
Shreya123714 Nov 1, 2024
df0c997
General performance improvement (#6078)
mosbat Nov 1, 2024
539871a
Add Fibonacci series to Recursion package (#6079)
MohamedBoukthir Nov 2, 2024
04bfaa8
Rename `Recursion` package (#6081)
alxkm Nov 3, 2024
935a135
Bump org.apache.maven.plugins:maven-surefire-plugin from 3.5.1 to 3.5…
dependabot[bot] Nov 4, 2024
e63ba4b
Bump com.puppycrawl.tools:checkstyle from 10.20.0 to 10.20.1 (#6085)
dependabot[bot] Nov 7, 2024
b971453
Bump com.github.spotbugs:spotbugs-maven-plugin from 4.8.6.5 to 4.8.6.…
dependabot[bot] Nov 12, 2024
18b2ab6
Bump codecov/codecov-action from 4 to 5 in /.github/workflows (#6092)
dependabot[bot] Nov 14, 2024
7ec5d24
Bump com.mebigfatguy.fb-contrib:fb-contrib from 7.6.5 to 7.6.8 (#6093)
dependabot[bot] Nov 14, 2024
1a2aedd
Add optimized version of DijkstraAlgorithm (#6088)
likespro Nov 19, 2024
69870f8
Bump gitpod/workspace-java-21 from 2024-09-11-00-04-27 to 2024-11-26-…
dependabot[bot] Dec 2, 2024
fff1826
Bump com.puppycrawl.tools:checkstyle from 10.20.1 to 10.20.2 (#6097)
dependabot[bot] Dec 3, 2024
ebd7a37
Bump com.puppycrawl.tools:checkstyle from 10.20.2 to 10.21.0 (#6098)
dependabot[bot] Dec 12, 2024
9dfd999
Bump org.junit:junit-bom from 5.11.3 to 5.11.4 (#6101)
dependabot[bot] Dec 16, 2024
2792c83
Bump com.mebigfatguy.fb-contrib:fb-contrib from 7.6.8 to 7.6.9 (#6100)
dependabot[bot] Dec 16, 2024
1e9cb96
Bump org.junit.jupiter:junit-jupiter from 5.11.3 to 5.11.4 (#6103)
dependabot[bot] Dec 16, 2024
13b5d62
Bump org.junit.jupiter:junit-jupiter-api from 5.11.3 to 5.11.4 (#6102)
dependabot[bot] Dec 16, 2024
d657458
Bump org.assertj:assertj-core from 3.26.3 to 3.27.0 (#6106)
dependabot[bot] Dec 19, 2024
d102fa7
Bump org.apache.commons:commons-collections4 from 4.5.0-M2 to 4.5.0-M…
dependabot[bot] Dec 19, 2024
2fff579
Add unit test for EditDistance (#6108)
nguyentanphat8694 Dec 21, 2024
6a60458
Bump com.puppycrawl.tools:checkstyle from 10.21.0 to 10.21.1 (#6114)
dependabot[bot] Dec 29, 2024
2da56d6
Bump org.assertj:assertj-core from 3.27.0 to 3.27.1 (#6115)
dependabot[bot] Jan 1, 2025
14db275
Improve Vampire Number (#6110)
Shisoik Jan 1, 2025
7c5351e
Bump org.mockito:mockito-core from 5.14.2 to 5.15.2 (#6116)
dependabot[bot] Jan 2, 2025
5ab6356
Bump org.assertj:assertj-core from 3.27.1 to 3.27.2 (#6117)
dependabot[bot] Jan 6, 2025
a9633c0
style: include `ICAST_IDIV_CAST_TO_DOUBLE` (#6121)
vil02 Jan 10, 2025
1e6ed97
Refactor files to be in correctly nested packages (#6120)
varada610 Jan 11, 2025
08c0f4a
improve zig-zag-pattern (#6128)
r4lly99 Jan 12, 2025
bd785de
Refactor and enhance the 'Upper' class (#6118)
paren-thesis Jan 12, 2025
779381f
Update Armstrong (#6131)
Patient-Pace-Coder Jan 13, 2025
39122a9
style: include `PCOA_PARTIALLY_CONSTRUCTED_OBJECT_ACCESS` (#6133)
vil02 Jan 13, 2025
754bf6c
Add Goldbach's Conjecture algorithm (#6127)
BILLSARAN Jan 13, 2025
466ff0b
Add convertion of numbers into their word representation (#6137)
ZingadePrathamesh Jan 16, 2025
5454e2f
Add DarkSort Algorithm (#6141)
sahilkumarvalecha Jan 18, 2025
30d0c06
Fix absolute max bug (#6144)
rizwan-ilyas Jan 18, 2025
0e0539e
Fix AbsoluteMin bug for equal absolute values (#6145)
rizwan-ilyas Jan 19, 2025
364f660
Bump org.assertj:assertj-core from 3.27.2 to 3.27.3 (#6146)
dependabot[bot] Jan 20, 2025
f9efd38
Fix: Replaced removeLast() with remove(current.size() - 1) (#6152)
MaddyRizvi Jan 26, 2025
4ef0682
Create package prime, matrix and games (#6139)
varada610 Jan 27, 2025
4d667e1
Bump com.puppycrawl.tools:checkstyle from 10.21.1 to 10.21.2 (#6154)
dependabot[bot] Jan 27, 2025
d4b28b3
Add Constrained Shortest Path Problem (CSPP) / Shortest Path Problem …
DenizAltunkapan Jan 28, 2025
3313ddc
Bump gitpod/workspace-java-21 from 2024-11-26-08-43-19 to 2025-02-10-…
dependabot[bot] Feb 10, 2025
63ce6b8
Refactor LWWElementSet (#6164)
itakurah Feb 13, 2025
5be5e35
Add Heavy-Light Decomposition (HLD) (#6169)
NithinU2802 Feb 17, 2025
1f951c1
Bump com.github.spotbugs:spotbugs-maven-plugin from 4.8.6.6 to 4.9.1.…
dependabot[bot] Feb 17, 2025
ed3680b
Bump org.apache.maven.plugins:maven-compiler-plugin from 3.13.0 to 3.…
dependabot[bot] Feb 21, 2025
bb0bb03
Bump org.junit.jupiter:junit-jupiter from 5.11.4 to 5.12.0 (#6176)
dependabot[bot] Feb 22, 2025
f40330c
chore: use BOM to manage junit dependencies (#6178)
vil02 Feb 22, 2025
27bbc3e
Bump org.junit:junit-bom from 5.11.4 to 5.12.0 (#6174)
dependabot[bot] Feb 22, 2025
9ce2ff4
chore: remove explicit dependency to `junit-jupiter-api` (#6179)
vil02 Feb 24, 2025
df6da47
Bump com.puppycrawl.tools:checkstyle from 10.21.2 to 10.21.3 (#6181)
dependabot[bot] Feb 24, 2025
849ab91
Add reverseUsingStringBuilder method to reverse a string (#6182)
geetoor-maven Feb 27, 2025
c8281e0
Add Maximum Weighted Matching Algorithm for Trees (#6184)
DenizAltunkapan Mar 1, 2025
f70a218
Bump org.mockito:mockito-core from 5.15.2 to 5.16.0 (#6185)
dependabot[bot] Mar 3, 2025
b2a701a
Bump com.puppycrawl.tools:checkstyle from 10.21.3 to 10.21.4 (#6187)
dependabot[bot] Mar 4, 2025
9bfc05a
Bump com.github.spotbugs:spotbugs-maven-plugin from 4.9.1.0 to 4.9.2.…
dependabot[bot] Mar 4, 2025
e6073f8
Add math builder (#6190)
sadiul-hakim Mar 12, 2025
769e497
Add Parenthesis to MathBuilder (#6193)
sadiul-hakim Mar 14, 2025
5285a3d
Add a linear system solver (#6196)
21kondav Mar 14, 2025
8509be1
Bump org.junit:junit-bom from 5.12.0 to 5.12.1 (#6197)
dependabot[bot] Mar 14, 2025
1a69a2d
Bump com.github.spotbugs:spotbugs-maven-plugin from 4.9.2.0 to 4.9.3.…
dependabot[bot] Mar 17, 2025
b44ecf7
Bump org.mockito:mockito-core from 5.16.0 to 5.16.1 (#6199)
dependabot[bot] Mar 17, 2025
4514887
Add feature to convert numeric words to their number representation (…
Sufi-san Mar 18, 2025
0072ed9
style: do not suppress `lossy-conversions` (#6206)
vil02 Mar 31, 2025
743f966
Add Traveling Salesman Problem (#6205)
DenizAltunkapan Mar 31, 2025
3471bbb
Bump org.apache.maven.plugins:maven-surefire-plugin from 3.5.2 to 3.5…
dependabot[bot] Apr 1, 2025
a5a4873
Bump com.puppycrawl.tools:checkstyle from 10.21.4 to 10.22.0 (#6208)
dependabot[bot] Apr 1, 2025
22098c7
style: remove redundant PMD exclusions (#6209)
vil02 Apr 1, 2025
251e9e1
refactor: introduce `SinglyLinkedListNode` (#6210)
vil02 Apr 2, 2025
93e8535
Bump org.jacoco:jacoco-maven-plugin from 0.8.12 to 0.8.13 (#6211)
dependabot[bot] Apr 2, 2025
c3d65e0
Bump com.puppycrawl.tools:checkstyle from 10.22.0 to 10.23.0 (#6212)
dependabot[bot] Apr 2, 2025
2570a99
Bump org.mockito:mockito-core from 5.16.1 to 5.17.0 (#6213)
dependabot[bot] Apr 5, 2025
f53bc00
Add ReservoirSampling algorithm to randomized module (#6204)
cureprotocols Apr 7, 2025
ce6e734
Bump org.junit:junit-bom from 5.12.1 to 5.12.2 (#6217)
dependabot[bot] Apr 12, 2025
c8177e3
Bump DoozyX/clang-format-lint-action from 0.18 to 0.20 in /.github/wo…
dependabot[bot] Apr 14, 2025
ad5e496
Add LongestIncreasingSubsequenceNLogN (#6221)
huseynovvusal Apr 15, 2025
f91cae7
Bump com.h3xstream.findsecbugs:findsecbugs-plugin from 1.13.0 to 1.14…
dependabot[bot] Apr 21, 2025
7a16daf
Bump org.apache.commons:commons-collections4 from 4.5.0-M3 to 4.5.0 (…
dependabot[bot] Apr 22, 2025
d866fbd
Bump com.puppycrawl.tools:checkstyle from 10.23.0 to 10.23.1 (#6228)
dependabot[bot] Apr 29, 2025
571d05c
Add Karger's minimum cut algorithm (#6233)
MuhammadEzzatHBK May 5, 2025
c02074e
Update CODEOWNERS
siriak May 9, 2025
6fe630c
Add Monte Carlo's Integral Approximation (#6235)
MuhammadEzzatHBK May 9, 2025
b09766e
Add Randomized Quick Sort (#6234)
VibhuKhera123 May 9, 2025
121bf1e
Bump org.mockito:mockito-core from 5.17.0 to 5.18.0 (#6240)
dependabot[bot] May 20, 2025
d23a0ec
Bump com.puppycrawl.tools:checkstyle from 10.23.1 to 10.24.0 (#6246)
dependabot[bot] May 22, 2025
2320b46
Add BTree implementation (#6248)
skamble2 May 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
136 changes: 136 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
---
Language: Java
AccessModifierOffset: -4
AlignAfterOpenBracket: DontAlign
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Right
AlignOperands: false
AlignTrailingComments: false
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: true
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
AfterCaseLabel: false
AfterClass: false
AfterControlStatement: false
AfterEnum: false
AfterFunction: false
AfterNamespace: false
AfterObjCDeclaration: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true
BreakBeforeBinaryOperators: All
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeComma
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit: 300
CommentPragmas: '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: false
ForEachMacros:
- foreach
- Q_FOREACH
- BOOST_FOREACH
IncludeBlocks: Preserve
IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
SortPriority: 0
- Regex: '^(<|"(gtest|gmock|isl|json)/)'
Priority: 3
SortPriority: 0
- Regex: '.*'
Priority: 1
SortPriority: 0
IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: ''
IndentCaseLabels: false
IndentGotoLabels: true
IndentPPDirectives: None
IndentWidth: 4
IndentWrappedFunctionNames: false
InsertNewlineAtEOF: true
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd: ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: Inner
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 4
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Left
ReflowComments: true
SortIncludes: true
SortUsingDeclarations: true
SpaceAfterCStyleCast: true
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
Standard: Latest
StatementMacros:
- Q_UNUSED
- QT_REQUIRE_VERSION
TabWidth: 8
UseCRLF: false
UseTab: Never
...
25 changes: 25 additions & 0 deletions .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.238.0/containers/java/.devcontainer/base.Dockerfile

# [Choice] Java version (use -bullseye variants on local arm64/Apple Silicon): 11, 17, 11-bullseye, 17-bullseye, 11-buster, 17-buster
ARG VARIANT="21-bullseye"
FROM mcr.microsoft.com/vscode/devcontainers/java:1.1.0-${VARIANT}

# [Option] Install Maven
ARG INSTALL_MAVEN="false"
ARG MAVEN_VERSION=""
# [Option] Install Gradle
ARG INSTALL_GRADLE="false"
ARG GRADLE_VERSION=""
RUN if [ "${INSTALL_MAVEN}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install maven \"${MAVEN_VERSION}\""; fi \
&& if [ "${INSTALL_GRADLE}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install gradle \"${GRADLE_VERSION}\""; fi

# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10
ARG NODE_VERSION="none"
RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi

# [Optional] Uncomment this section to install additional OS packages.
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
# && apt-get -y install --no-install-recommends <your-package-list-here>

# [Optional] Uncomment this line to install global node packages.
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1
47 changes: 47 additions & 0 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.238.0/containers/java
{
"name": "Java",
"build": {
"dockerfile": "Dockerfile",
"args": {
// Update the VARIANT arg to pick a Java version: 11, 17
// Append -bullseye or -buster to pin to an OS version.
// Use the -bullseye variants on local arm64/Apple Silicon.
"VARIANT": "21-bullseye",
// Options
"INSTALL_MAVEN": "true",
"INSTALL_GRADLE": "true",
"NODE_VERSION": "lts/*"
}
},

// Configure tool-specific properties.
"customizations": {
// Configure properties specific to VS Code.
"vscode": {
// Set *default* container specific settings.json values on container create.
"settings": {
},

// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"vscjava.vscode-java-pack",
"GitHub.copilot",
]
}
},

// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],

// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "java -version",

// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode",
"features": {
"git": "os-provided",
"github-cli": "latest"
}
}
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @DenizAltunkapan @yanglbme @vil02 @BamaCharanChhandogi @alxkm @siriak
45 changes: 45 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: "Bug report"
description: "Create a report to help us improve"
title: "[BUG] <title>"
labels: ["bug"]
body:
- type: textarea
id: description
attributes:
label: "Description"
description: "A clear and concise description of what the bug is."
validations:
required: true
- type: textarea
id: steps
attributes:
label: "Steps to reproduce"
description: "Steps to reproduce the behavior (if applicable)"
placeholder: |
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
validations:
required: false
- type: textarea
id: exceptedbhv
attributes:
label: "Excepted behavior"
description: "A clear and concise description of what you expected to happen."
validations:
required: true
- type: textarea
id: screenshots
attributes:
label: "Screenshots"
description: "If applicable, add screenshots to help explain your problem."
validations:
required: false
- type: textarea
id: context
attributes:
label: "Additional context"
description: "Is there anything else we should know about this bug report?"
validations:
required: false
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Discord community
url: https://the-algorithms.com/discord/
about: Have any questions or found any bugs? Please contact us via Discord
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: "Feature Request"
description: "Suggest an idea for this project"
title: "[FEATURE REQUEST] <title>"
labels: ["enhancement"]
body:
- type: textarea
id: description
attributes:
label: What would you like to Propose?
description: Provide a clear and concise explanation of your Proposal.
validations:
required: true
- type: markdown
attributes:
value: |
For new implementations, please specify the name and problem statement for the algorithm.
For algorithm enhancements, specify what needs to be changed and why. For example:
- Adding tests.
- Optimizing logic.
- Refactoring the file and folders for better structure.
- type: textarea
id: needdetails
attributes:
label: "Issue details"
description: "Write down all the issue/algorithm details description mentioned above."
validations:
required: true
- type: textarea
id: extrainfo
attributes:
label: "Additional Information"
description: "Add any other information or screenshots about the request here."
validations:
required: false
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/other.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Other
description: Use this for any other issues. Do NOT create blank issues
title: "[OTHER]"
labels: ["awaiting triage"]
body:
- type: textarea
id: issuedescription
attributes:
label: What would you like to share?
description: Provide a clear and concise explanation of your issue.
validations:
required: true
- type: textarea
id: extrainfo
attributes:
label: Additional information
description: Is there anything else we should know about this issue?
validations:
required: false
18 changes: 18 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
version: 2
updates:
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "weekly"

- package-ecosystem: "github-actions"
directory: "/.github/workflows/"
schedule:
interval: "daily"

- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "daily"
...
31 changes: 12 additions & 19 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,16 @@
### **Describe your change:**
<!--
Thank you for your contribution!
In order to reduce the number of notifications sent to the maintainers, please:
- create your PR as draft, cf. https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests#draft-pull-requests,
- make sure that all of the CI checks pass,
- mark your PR as ready for review, cf. https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request#marking-a-pull-request-as-ready-for-review
-->

- [ ] Add an algorithm?
- [ ] Fix a bug or typo in an existing algorithm?
- [ ] Documentation change?

#### References

<!-- Add any reference to previous pull-request or issue -->

### **Checklist:**

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->
<!-- For completed items, change [ ] to [x] -->

- [ ] I have read [CONTRIBUTING.md](https://github.com/TheAlgorithms/Java/blob/master/CONTRIBUTING.md).
- [ ] This pull request is all my own work -- I have not plagiarized.
- [ ] I know that pull requests will not be merged if they fail the automated tests.
- [ ] This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
- [ ] All new Java files are placed inside an existing directory.
- [ ] All filenames are in all uppercase characters with no spaces or dashes.
- [ ] This pull request is all my own work -- I have not plagiarized it.
- [ ] All filenames are in PascalCase.
- [ ] All functions and variable names follow Java naming conventions.
- [ ] All new algorithms have a URL in its comments that points to Wikipedia or other similar explanation.
- [ ] If this pull request resolves one or more open issues then the commit message contains `Fixes: #{$ISSUE_NO}`.
- [ ] All new algorithms have a URL in their comments that points to Wikipedia or other similar explanations.
- [ ] All new code is formatted with `clang-format -i --style=file path/to/your/file.java`
Loading