f77_combinatorics, a Fortran77 code which considers a variety of problems in combinatorics involving counting, combinations, permutations, and so on.
The information on this web page is distributed under the MIT license.
change_dynamic, a Fortran77 code which uses dynamic programming to solve the change making problem, which counts the number of ways a given sum can be formed using coins of various denominations.
combo, a Fortran77 code which includes many combinatorial routines.
knapsack, a Fortran77 code which implements algorithms for a variety of combinatorial problems, including bin packing, the subset sum problem, the generalized assignment problem, the change making problem, the 01 knapsack problem, and the multiple knapsack problem, by Silvano Martelo and Paolo Toth.
knapsack_01_brute, a Fortran77 code which uses brute force to solve small versions of the 0/1 knapsack problem;
partition_brute, a Fortran77 code which uses brute force to seek solutions of the partition problem, splitting a set of integers into two subsets with equal sum.
satisfy_brute, a Fortran77 code which uses brute force to find all assignments of values to a set of logical variables which make a complicated logical statement true.
subset, a Fortran77 code which enumerates, generates, ranks and unranks combinatorial objects including combinations, partitions, subsets, index sets, and trees.
subset_sum, a Fortran77 code which seeks solutions of the subset sum problem, in which it is desired to find a subset of a set of integers which has a given sum.
subset_sum_brute, a Fortran77 code which uses brute force to solve the subset sum problem, to find a subset of a set of integers which has a given sum.
subset_sum_swap, a Fortran77 code which uses swapping to try to improve an initial estimated solution of the subset sum problem, which seeks a subset of a set of integers which has a given sum. Even when an exact solution exists, this approach often only finds an approximate solution.
tsp_brute, a Fortran77 code which is given a city-to-city distance map, and solves the traveling salesperson problem (TSP), using brute force.