Algorithms_in_C
1.0.0
Set of algorithms implemented in C.
|
► client_server | |
client.c | Client side implementation of Server-Client system |
server.c | Server side implementation of Server-Client system |
udp_client.c | Client side implementation of UDP client-server model |
udp_server.c | Server side implementation of UDP client-server model |
► conversions | |
c_atoi_str_to_integer.c | Recoding the original atoi function in stdlib.h |
decimal_to_binary_recursion.c | Convert decimal to binary using recursion algorithm |
int_to_string.c | Convert a positive integer to string (non-standard function) representation |
► data_structures | |
► array | |
carray.h | |
► binary_trees | |
binary_search_tree.c | A basic unbalanced binary search tree implementation in C |
segment_tree.c | Segment trees with only point updates |
threaded_binary_trees.c | This file is a simple implementation of a Threaded Binary Tree |
► dictionary | |
dict.h | |
► dynamic_array | |
dynamic_array.h | |
► graphs | |
graph.h | |
queue.h | |
► hash_set | |
hash_set.h | |
► linked_list | |
doubly_linked_list.c | Implementation of Doubly linked list |
► list | |
list.h | |
► stack | |
► stack_linked_list | |
stack.h | |
stack.h | |
► exercism | |
► acronym | |
acronym.h | |
► hello_world | |
hello_world.h | |
► isogram | |
isogram.h | |
► rna_transcription | |
rna_transcription.h | |
► word_count | |
word_count.h | |
► geometry | |
geometry_datatypes.h | Generic header that provides data types for 3D vectors and quaternions |
quaternions.c | Functions related to 3D quaternions and Euler angles |
vectors_3d.c | Functions related to 3D vector operations |
► graphics | |
spirograph.c | Implementation of Spirograph |
► hash | |
hash_adler32.c | 32-bit Adler hash algorithm |
hash_crc32.c | 32-bit CRC hash algorithm |
hash_djb2.c | DJB2 hash algorithm |
hash_sdbm.c | SDBM hash algorithm |
hash_xor8.c | 8-bit XOR hash algorithm for ASCII characters |
► machine_learning | |
adaline_learning.c | Adaptive Linear Neuron (ADALINE) implementation |
k_means_clustering.c | K Means Clustering Algorithm implemented |
kohonen_som_topology.c | Kohonen self organizing map (topological map) |
kohonen_som_trace.c | Kohonen self organizing map (data tracing) |
► misc | |
cantor_set.c | Program to generate Cantor ternary set |
cartesian_to_polar.c | Function to convert a Cartesian co-ordinate to polar form |
collatz.c | Implementation of Collatz' conjecture |
factorial_large_number.c | Compute factorial of arbitrarily large numbers by storing individual digits in a byte |
fibonacci_fast.c | Compute \(m^{mth}\) Fibonacci number using the formulae: |
palindrome.c | Program to identify if a number is palindrome number or not |
poly_add.c | Implementation of Addition of two polynomials |
prime.c | Program to identify if a number is prime number or not |
strong_number.c | Strong number is a number whose sum of all digits’ factorial is equal to the number n For example: 145 = 1!(1) + 4!(24) + 5!(120) |
sudoku_solver.c | Sudoku Solver using recursive implementation of brute-force algorithm |
union_find.c | Union find algorithm |
► numerical_methods | |
durand_kerner_roots.c | Compute all possible approximate roots of any given polynomial using Durand Kerner algorithm |
lu_decompose.c | LU decomposition of a square matrix |
newton_raphson_root.c | Find approximate solution for \(f(x) = 0\) using Newton-Raphson interpolation algorithm |
ode_forward_euler.c | Solve a multivariable first order ordinary differential equation (ODEs) using forward Euler method |
ode_midpoint_euler.c | Solve a multivariable first order ordinary differential equation (ODEs) using midpoint Euler method |
ode_semi_implicit_euler.c | Solve a multivariable first order ordinary differential equation (ODEs) using semi implicit Euler method |
qr_decompose.h | Library functions to compute QR decomposition of a given matrix |
qr_decomposition.c | Program to compute the QR decomposition of a given matrix |
qr_eigen_values.c | Compute real eigen values and eigen vectors of a symmetric matrix using QR decomposition method |
realtime_stats.c | Compute statistics for data entered in rreal-time |
► project_euler | |
► problem_1 | |
sol1.c | Problem 1 solution |
sol2.c | Problem 1 solution |
sol3.c | Problem 1 solution |
sol4.c | Problem 1 solution |
► problem_10 | |
sol1.c | Problem 10 solution |
sol2.c | Problem 10 solution |
► problem_12 | |
sol1.c | Problem 12 solution |
► problem_13 | |
sol1.c | Problem 13 solution |
► problem_14 | |
sol1.c | Problem 14 solution |
► problem_15 | |
sol1.c | Problem 15 solution |
► problem_16 | |
sol1.c | Problem 16 solution |
► problem_19 | |
sol1.c | Problem 19 solution |
► problem_2 | |
so1.c | Problem 2 solution |
► problem_20 | |
sol1.c | Problem 20 solution |
► problem_21 | |
sol1.c | Problem 21 solution |
► problem_22 | |
sol1.c | Problem 22 solution |
► problem_23 | |
sol1.c | Problem 23 solution |
sol2.c | Problem 23 solution - optimization using look-up array |
► problem_25 | |
sol1.c | Problem 25 solution implemented using arbitrarily large numbers represented as arrays |
► problem_26 | |
sol1.c | Problem 26 solution |
► problem_3 | |
sol1.c | Problem 3 solution |
sol2.c | Problem 3 solution |
► problem_4 | |
sol.c | Problem 4 solution |
► problem_401 | |
sol1.c | Problem 401 solution - Sum of squares of divisors |
► problem_5 | |
sol1.c | Problem 5 solution - Naive algorithm (slowest) |
sol2.c | Problem 5 solution - Naive algorithm (Improved over problem_5/sol1.c) |
sol3.c | Problem 5 solution (Fastest) |
► problem_6 | |
sol.c | Problem 6 solution |
► problem_7 | |
sol.c | Problem 7 solution |
sol2.c | Problem 7 solution |
► problem_8 | |
sol1.c | Problem 8 solution |
sol2.c | Problem 8 solution |
► problem_9 | |
sol1.c | Problem 9 solution - A naive implementation |
sol2.c | Problem 9 solution |
► searching | |
binary_search.c | Program to perform binary search of a target value in a given sorted array |
jump_search.c | Implementation of jump search algorithm |
modified_binary_search.c | Modified binary search algorithm |
► sorting | |
bead_sort.c | Sorting of array list using bead sort |
bubble_sort.c | Bubble sort algorithm implementation |
bubble_sort_recursion.c | Bubble sort algorithm implementation using recursion |
insertion_sort.c | Insertion sort algorithm implementation |
insertion_sort_recursive.c | Insertion sort algorithm implementation |
merge_sort.c | Implementation of merge sort algorithm |
selection_sort.c | Selection sort algorithm implementation |
shell_sort2.c | Shell sort algorithm implementation |