GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - john0xff/algorithm: C++ Implementation of Algorithms (aka. Spaghetti Source)

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

366 Commits
366 Commits

Folders and files

NameName
Last commit message
Last commit date
__WIP
__WIP
 
 
_misc
_misc
 
 
_note
_note
 
 
combinatorics
combinatorics
 
 
data_structure
data_structure
 
 
dynamic_programming
dynamic_programming
 
 
game
game
 
 
geometry
geometry
 
 
graph
graph
 
 
machine_learning
machine_learning
 
 
math
math
 
 
number_theory
number_theory
 
 
other
other
 
 
string
string
 
 
README.md
README.md
 
 

Repository files navigation

C++ implementations of algorithms

These are my C++ implementations of algorithms, which are written for studying/understanding algorithms.

These codes are published in public domain. You can use the codes for any purpose without any warranty.

author: Takanori MAEHARA (e-mail: [email protected] / twitter: @tmaehara)

List

Combinatorics

  • Next radix number
  • Unique hash for permutations
  • Permutation index
  • Permutation index (general)

Data structure

  • Zero Suppressed Decision Diagram (ZDD)
  • Cartesian Tree
  • Fenwick Tree
  • 2D Fenwick Tree
  • Sparse Table
  • Randomized Binary Search Tree
  • Splay Tree
  • Min-Max Heap
  • Radix Heap
  • Skew Heap
  • Sqrt Array
  • Union Find
  • Traversable Union Find
  • Wavelet Matrix
  • Persistent array
  • Persistent heap
  • Persistent rope
  • Persistent union find

Dynamic programming

This category should be reorganized.

  • dynamic_programming/knapsack.cc
  • dynamic_programming/longest_increasing_subsequence.cc
  • dynamic_programming/minimum_coin_change.cc
  • dynamic_programming/rod_cutting.cc

Computational Geometry (2D)

  • geometry/!circle.cc
  • geometry/bk_tree.cc
  • geometry/convex_hull.cc
  • geometry/covered_range.cc
  • geometry/randomized_kd_tree.cc
  • geometry/rectangle_union.cc
  • geometry/rectilinear_mst.cc
  • geometry/vantage_point_tree.cc

Graph Algorithms

  • graph/arborescence.cc

  • graph/arborescence2.cc

  • graph/articulation_points.cc

  • graph/betweenness_centrality.cc

  • graph/bipartite_matching.cc

  • graph/bipartite_matching_HK.cc

  • graph/cycle_enumeration.cc

  • graph/dominator_tree.cc

  • graph/dynamic_reachability_dag.cc

  • graph/euler_tour_tree.cc

  • graph/eulerian_path_undirected.cc

  • graph/gabow_edmonds.cc

  • graph/gomory_hu_tree.cc

  • graph/hamilton_cycle_ore.cc

  • graph/is_bipartite.cc

  • graph/is_chordal.cc

  • graph/is_claw_free.cc

  • graph/is_cograph.cc

  • graph/is_graphic.cc

  • graph/isomorphism.cc

  • graph/kariv_hakimi.cc

  • graph/kcore.cc

  • graph/kruskal.cc

  • graph/least_common_ancestor_doubling.cc

  • graph/least_common_ancestor_heavylight.cc

  • graph/least_common_ancestor_sparsetable.cc

  • graph/least_common_ancestor_tarjan.cc

  • graph/link_cut_tree.cc

  • graph/maximal_cliques.cc

  • graph/maximum_cut.cc

  • Maximum Flow (Ford-Fulkerson)

  • Maximum Flow (Edmonds-Karp)

  • Maximum Flow (Dinic's blocking flow)

  • Maximum Flow (Goldberg-Tarjan's preflow-push)

  • Minimum Cost Maximum Flow (Tomizawa, Edmonds-Karp's successive shortest paths

  • Minimum Cost Maximum Flow (Goldberg-Tarjan's minimum mean cycle canceling

  • graph/minimum_feedback_arc_set.cc

  • graph/minimum_mean_cycle.cc

  • graph/reachability.cc

  • graph/shortest_path_st.cc

  • graph/strongly_connected_component_gabow.cc

  • graph/strongly_connected_component_kosaraju.cc

  • graph/strongly_connected_component_tarjan.cc

  • graph/transitive_reduction_dag.cc

  • graph/traveling_salesman.cc

  • graph/tree_decomposition.cc

  • graph/tree_isomorphism.cc

Mathematics

This category should be reorganized.

  • math/KaratsubaMultiplication.cc
  • math/ODE_dormand_prince.cc
  • math/ODE_runge_kutta.cc
  • math/SimplexMethodLP.cc
  • math/assignment.cc
  • math/fast_fourier_transform.cc
  • math/fast_modulo_transform.cc
  • math/find_min_unimodal.cc
  • math/integrate.cc
  • math/integrate_DE.cc
  • math/linear_recursion.cc
  • math/matrix_bool.cc
  • math/matrix_double.cc
  • math/permanent.cc
  • math/polynomial_int.cc
  • math/quadratic_equation.cc
  • math/satisfiability.cc
  • math/satisfiability_hornsat.cc
  • math/satisfiability_twosat.cc
  • math/zero_one_IP_solver.cc

Number theory

  • number_theory/carmichael_lambda.cc
  • number_theory/divisor_sigma.cc
  • number_theory/euler_phi.cc
  • number_theory/mobius_mu.cc
  • number_theory/modular_arithmetics.cc
  • number_theory/primes.cc

Other

This category should be reorganized.

  • Coordinate Compression
  • Gregorian Calendar
  • Poker Hands
  • Cube
  • other/all_nearest_smaller_values.cc
  • other/exact_cover.cc
  • other/knapsack_expcore.cc
  • other/sorting_network.cc
  • other/subset_sum.cc
  • other/unweighted_interval_scheduling.cc
  • other/weighted_interval_scheduling.cc

Misc

  • Dictionary
  • Tick

About

C++ Implementation of Algorithms (aka. Spaghetti Source)

Resources

Readme
Activity

Stars

0 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.