Algorithms
Generic algorithms for Julia.
Resources¶
- awesome-algorithms : a curated list of awesome places to learn and/or practice algorithms.
- BeautifulAlgorithms.jl : Concise and beautiful algorithms written in Julia.
- Project_Euler_Julia.ipynb : Solutions to Project Euler Problems, algorithm & math puzzles.
Sorting¶
- JuliaCollections/SortingAlgorithms.jl : extra sorting algorithms extending Julia's sorting API.
- JuliaStrings/NaturalSort.jl : Natural sort order.
- xiaodaigh/SortingLab.jl : Experimental faster sorting algorithms.
NP-complete Problems¶
Wikipedia: NP-complete problems cannot be solved in polynomial time complexity and often have to be inexactly solved using heuristics.
Traveling salesman problem¶
Wikipedia: Traveling salesman problem
- evanfields/TravelingSalesmanHeuristics.jl : Julia package for simple traveling salesman problem heuristics.
Boolean satisfiability problem (SAT)¶
Wikipedia: SAT is a kind of NP-complete (NPC) problems.
- dpsanders/SimpleSATSolver.jl : A (very) simple SAT solver in pure Julia.
- sisl/PicoSAT.jl : Provides Julia bindings to the popular SAT solver picosat by Armin Biere.
Genetic algorithm¶
Wikipedia: Genetic algorithm. See also the optimization section.
- wildart/Evolutionary.jl : Evolutionary & genetic algorithms for Julia.
Homomorphic encryption¶
Wikipedia: Homomorphic encryption
- hpsc-lab/SecureArithmetic.jl : Secure arithmetic operations using fully homomorphic encryption.
- hpsc-lab/OpenFHE.jl : Fully homomorphic encryption in Julia using OpenFHE.