From a7db995d619b2950dadb5d2ac3096e407d5b49da Mon Sep 17 00:00:00 2001 From: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Date: Sat, 24 Dec 2022 01:52:24 +0000 Subject: [PATCH] Documentation for a4e7b7bc4ba53f823693beeff61f278ceb6587cc --- d2/de8/structeuler__.html | 54 +- d5/d88/md__d_i_r_e_c_t_o_r_y.html | 80 +-- d6/d77/md_leetcode__d_i_r_e_c_t_o_r_y.html | 2 +- d7/db5/md_exercism__r_e_a_d_m_e.html | 2 +- d9/d8b/structmat__3x3__.html | 48 +- d9/dc3/lcs_8c__incl.map | 7 + d9/dc3/lcs_8c__incl.md5 | 1 + d9/dc3/lcs_8c__incl.svg | 82 +++ da/d6c/exponential__search_8c.html | 4 +- db/de1/lcs_8c.html | 489 ++++++++++++++++++ db/de1/lcs_8c.js | 7 + ...ddf1224851353fc92bfbff6f499fa97_cgraph.map | 6 + ...ddf1224851353fc92bfbff6f499fa97_cgraph.md5 | 1 + ...ddf1224851353fc92bfbff6f499fa97_cgraph.svg | 66 +++ ...8dca7b867074164d5f45b0f3851269d_cgraph.map | 5 + ...8dca7b867074164d5f45b0f3851269d_cgraph.md5 | 1 + ...8dca7b867074164d5f45b0f3851269d_cgraph.svg | 51 ++ de/d58/structquaternion__.html | 52 +- df/d58/md_leetcode__r_e_a_d_m_e.html | 8 +- dir_8a20dd5bfd5341a725342bf72b6b686f.html | 120 +++++ dir_8a20dd5bfd5341a725342bf72b6b686f.js | 4 + files.html | 290 +++++------ files_dup.js | 1 + globals_func_i.html | 2 +- globals_func_l.html | 2 + globals_func_m.html | 2 +- globals_func_t.html | 2 +- globals_i.html | 2 +- globals_l.html | 2 + globals_m.html | 2 +- globals_t.html | 2 +- index.html | 8 +- navtreedata.js | 52 +- navtreeindex0.js | 230 ++++---- navtreeindex1.js | 246 ++++----- navtreeindex2.js | 202 ++++---- navtreeindex3.js | 270 +++++----- navtreeindex4.js | 16 +- search/all_16.js | 2 +- search/all_b.js | 4 +- search/all_e.js | 33 +- search/all_f.js | 2 +- search/files_c.js | 3 +- search/functions_14.js | 2 +- search/functions_9.js | 4 +- search/functions_c.js | 6 +- search/functions_d.js | 2 +- 47 files changed, 1676 insertions(+), 803 deletions(-) create mode 100644 d9/dc3/lcs_8c__incl.map create mode 100644 d9/dc3/lcs_8c__incl.md5 create mode 100644 d9/dc3/lcs_8c__incl.svg create mode 100644 db/de1/lcs_8c.html create mode 100644 db/de1/lcs_8c.js create mode 100644 db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.map create mode 100644 db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.md5 create mode 100644 db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.svg create mode 100644 db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.map create mode 100644 db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.md5 create mode 100644 db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg create mode 100644 dir_8a20dd5bfd5341a725342bf72b6b686f.html create mode 100644 dir_8a20dd5bfd5341a725342bf72b6b686f.js diff --git a/d2/de8/structeuler__.html b/d2/de8/structeuler__.html index ac4cc4c9..16d04e06 100644 --- a/d2/de8/structeuler__.html +++ b/d2/de8/structeuler__.html @@ -110,42 +110,42 @@ $(document).ready(function(){initNavTree('d2/de8/structeuler__.html','../../'); - - - - - + + - - - - - + + + + - - - - + + - - - - - + + + + - - - - + + - - - - + + + +

Data Fields

+
union {
+
   float   roll
 or bank \(\phi\) = rotation about X axis
 
+
 or bank \(\phi\) = rotation about X axis
 
   float   bank
 or roll \(\phi\) = rotation about X axis
 
}; 
 
+
 or roll \(\phi\) = rotation about X axis
 
}; 
 
union {
+
   float   pitch
 or elevation \(\theta\) = rotation about Y axis
 
+
 or elevation \(\theta\) = rotation about Y axis
 
   float   elevation
 or pitch \(\theta\) = rotation about Y axis
 
}; 
 
+
 or pitch \(\theta\) = rotation about Y axis
 
}; 
 
union {
+
   float   yaw
 or heading \(\psi\) = rotation about Z axis
 
+
 or heading \(\psi\) = rotation about Z axis
 
   float   heading
 or yaw \(\psi\) = rotation about Z axis
 
}; 
 
 or yaw \(\psi\) = rotation about Z axis
 
}; 
 

Detailed Description

3D Euler or Tait-Bryan angles (in radian)

diff --git a/d5/d88/md__d_i_r_e_c_t_o_r_y.html b/d5/d88/md__d_i_r_e_c_t_o_r_y.html index 76549632..48e1d5c6 100644 --- a/d5/d88/md__d_i_r_e_c_t_o_r_y.html +++ b/d5/d88/md__d_i_r_e_c_t_o_r_y.html @@ -257,6 +257,11 @@ Developer Tools
  • Test Min Printf
  • +Dynamic Programming

    + +

    Exercism

    -

    +

    Games

    -

    +

    Geometry

    -

    +

    Graphics

    -

    +

    Greedy Approach

    -

    +

    Hash

    -

    +

    Leetcode

    -

    +

    Machine Learning

    -

    +

    +Math

    + +

    Misc

    -

    +

    Numerical Methods

    -

    +

    Process Scheduling Algorithms

    -

    +

    Project Euler

    -

    +

    Searching

    -

    +

    Sorting

    -

    +

    LeetCode Algorithm

    diff --git a/d7/db5/md_exercism__r_e_a_d_m_e.html b/d7/db5/md_exercism__r_e_a_d_m_e.html index ae23e899..9a7fec76 100644 --- a/d7/db5/md_exercism__r_e_a_d_m_e.html +++ b/d7/db5/md_exercism__r_e_a_d_m_e.html @@ -101,7 +101,7 @@ $(document).ready(function(){initNavTree('d7/db5/md_exercism__r_e_a_d_m_e.html',

    This directory contains some sample solutions for exercism.io

    -

    +

    Overview

    In this directory you will find (in the right order):

    • hello-world
    • diff --git a/d9/d8b/structmat__3x3__.html b/d9/d8b/structmat__3x3__.html index 5fef701e..6f309d5b 100644 --- a/d9/d8b/structmat__3x3__.html +++ b/d9/d8b/structmat__3x3__.html @@ -116,39 +116,39 @@ Collaboration diagram for mat_3x3_:
    - - - - - + + - - - - + + + - - - - + + - - - - + + + - - - - + + - - - + + +

    Data Fields

    +
    union {
    +
       float   row1 [3]
     < 3 element row 1
     
    +
     < 3 element row 1
     
       vec_3d   vec1
     
    }; 
     
    +
     
    }; 
     
    union {
    +
       float   row2 [3]
     < 3 element row 2
     
    +
     < 3 element row 2
     
       vec_3d   vec2
     
    }; 
     
    +
     
    }; 
     
    union {
    +
       float   row3 [3]
     < 3 element row 3
     
    +
     < 3 element row 3
     
       vec_3d   vec3
     
    }; 
     
     
    }; 
     

    Detailed Description

    A 3x3 Matrix type definition.

    diff --git a/d9/dc3/lcs_8c__incl.map b/d9/dc3/lcs_8c__incl.map new file mode 100644 index 00000000..d9934690 --- /dev/null +++ b/d9/dc3/lcs_8c__incl.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/d9/dc3/lcs_8c__incl.md5 b/d9/dc3/lcs_8c__incl.md5 new file mode 100644 index 00000000..c0e3b590 --- /dev/null +++ b/d9/dc3/lcs_8c__incl.md5 @@ -0,0 +1 @@ +9f33855a9cf33a993ccb4f910e095d8c \ No newline at end of file diff --git a/d9/dc3/lcs_8c__incl.svg b/d9/dc3/lcs_8c__incl.svg new file mode 100644 index 00000000..1ed79344 --- /dev/null +++ b/d9/dc3/lcs_8c__incl.svg @@ -0,0 +1,82 @@ + + + + + + +dynamic_programming/lcs.c + + +Node1 + + +dynamic_programming +/lcs.c + + + + + +Node2 + + +stdio.h + + + + + +Node1->Node2 + + + + + +Node3 + + +stdlib.h + + + + + +Node1->Node3 + + + + + +Node4 + + +string.h + + + + + +Node1->Node4 + + + + + +Node5 + + +assert.h + + + + + +Node1->Node5 + + + + + diff --git a/da/d6c/exponential__search_8c.html b/da/d6c/exponential__search_8c.html index d151fe8a..ea83e73f 100644 --- a/da/d6c/exponential__search_8c.html +++ b/da/d6c/exponential__search_8c.html @@ -183,7 +183,7 @@ Functions

    Function: binary_search.

    algorithm that search the index of the given item

    recursive function that search the given element in

    -

    +

    the array using the <a href="https://github.com/TheAlgorithms/Algorithms-Explanation/blob/master/en/Search%20Algorithms/Binary%20Search.md" target="_blank" >Binary Search</a>

    Parameters
    @@ -253,7 +253,7 @@ Here is the call graph for this function:

    Function: exponential_search.

    algorithm that search the index of the given item

    recursive function that take an array and quickly find the range

    -

    +

    where to apply the binary search algorithm to find the given element

    Parameters
    diff --git a/db/de1/lcs_8c.html b/db/de1/lcs_8c.html new file mode 100644 index 00000000..42a16369 --- /dev/null +++ b/db/de1/lcs_8c.html @@ -0,0 +1,489 @@ + + + + + + + +Algorithms_in_C: dynamic_programming/lcs.c File Reference + + + + + + + + + + + + + + + +
    +
    +
    + + + + + +
    +
    Algorithms_in_C 1.0.0 +
    +
    Set of algorithms implemented in C.
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    lcs.c File Reference
    +
    +
    + +

    Longest Common Subsequence algorithm +More...

    +
    #include <stdio.h>
    +#include <stdlib.h>
    +#include <string.h>
    +#include <assert.h>
    +
    +Include dependency graph for lcs.c:
    +
    +
    +
    +
    +
    + + + +

    +Enumerations

    enum  { LEFT +, UP +, DIAG + }
     
    + + + + + + + + + + + + + +

    +Functions

    void lcslen (const char *s1, const char *s2, int l1, int l2, int **L, int **B)
     @breif Computes LCS between s1 and s2 using a dynamic-programming approach More...
     
    char * lcsbuild (const char *s1, int l1, int l2, int **L, int **B)
     @breif Builds the LCS according to B using a traceback approach More...
     
    static void test ()
     Self-test implementations. More...
     
    int main (int argc, char *argv[])
     Main function. More...
     
    +

    Detailed Description

    +

    Longest Common Subsequence algorithm

    +

    From Wikipedia: The longest common subsequence (LCS) problem is the problem of finding the longest subsequence common to all sequences in a set of sequences (often just two sequences).

    Author
    Kurtz
    +

    Enumeration Type Documentation

    + +

    ◆ anonymous enum

    + +
    +
    + + + + +
    anonymous enum
    +
    +
    15{LEFT, UP, DIAG};
    +
    +
    +
    +

    Function Documentation

    + +

    ◆ lcsbuild()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    char * lcsbuild (const char * s1,
    int l1,
    int l2,
    int ** L,
    int ** B 
    )
    +
    + +

    @breif Builds the LCS according to B using a traceback approach

    +
    Parameters
    + + + + + + +
    1s1 first null-terminated string
    2l1 length of s1
    3l2 length of s2
    4L matrix of size l1 x l2
    5B matrix of size l1 x l2
    +
    +
    +
    Returns
    lcs longest common subsequence
    +
    59 {
    +
    60 int i, j, lcsl;
    +
    61 char *lcs;
    +
    62 lcsl = L[l1][l2];
    +
    63
    +
    64 /* my lcs is at least the empty symbol */
    +
    65 lcs = (char *)calloc(lcsl+1, sizeof(char)); /* null-terminated \0 */
    +
    66 if (!lcs) {
    +
    67 perror("calloc: ");
    +
    68 return NULL;
    +
    69 }
    +
    70
    +
    71 i = l1, j = l2;
    +
    72 while (i > 0 && j > 0) {
    +
    73 /* walk the matrix backwards */
    +
    74 if (B[i][j] == DIAG) {
    +
    75 lcs[--lcsl] = s1[i-1];
    +
    76 i = i - 1;
    +
    77 j = j - 1;
    +
    78 }
    +
    79 else if (B[i][j] == LEFT)
    +
    80 j = j - 1;
    +
    81 else
    +
    82 i = i - 1;
    +
    83 }
    +
    84 return lcs;
    +
    85}
    +
    #define calloc(elemCount, elemSize)
    This macro replace the standard calloc function with calloc_dbg.
    Definition: malloc_dbg.h:22
    +
    Definition: list.h:8
    +
    +
    +
    + +

    ◆ lcslen()

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void lcslen (const char * s1,
    const char * s2,
    int l1,
    int l2,
    int ** L,
    int ** B 
    )
    +
    + +

    @breif Computes LCS between s1 and s2 using a dynamic-programming approach

    +
    Parameters
    + + + + + + + +
    1s1 first null-terminated string
    2s2 second null-terminated string
    3l1 length of s1
    4l2 length of s2
    5L matrix of size l1 x l2
    6B matrix of size l1 x l2
    +
    +
    +
    Returns
    void
    +
    27 {
    +
    28 /* B is the directions matrix
    +
    29 L is the LCS matrix */
    +
    30 int i, j;
    +
    31
    +
    32 /* loop over the simbols in my sequences
    +
    33 save the directions according to the LCS */
    +
    34 for (i = 1; i <= l1; ++i)
    +
    35 for (j = 1; j <= l2; ++j)
    +
    36 if (s1[i-1] == s2[j-1]) {
    +
    37 L[i][j] = 1 + L[i-1][j-1];
    +
    38 B[i][j] = DIAG;
    +
    39 }
    +
    40 else if (L[i-1][j] < L[i][j-1]) {
    +
    41 L[i][j] = L[i][j-1];
    +
    42 B[i][j] = LEFT;
    +
    43 }
    +
    44 else {
    +
    45 L[i][j] = L[i-1][j];
    +
    46 B[i][j] = UP;
    +
    47 }
    +
    48}
    +
    +
    +
    + +

    ◆ main()

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    int main (int argc,
    char * argv[] 
    )
    +
    + +

    Main function.

    +
    Parameters
    + + + +
    argccommandline argument count (ignored)
    argvcommandline array of arguments (ignored)
    +
    +
    +
    Returns
    0 on exit
    +
    150 {
    +
    151 test(); // run self-test implementations
    +
    152 return 0;
    +
    153}
    +
    static void test()
    Self-test implementations.
    Definition: lcs.c:90
    +
    +Here is the call graph for this function:
    +
    +
    +
    +
    + +
    +
    + +

    ◆ test()

    + +
    +
    + + + + + +
    + + + + + + + + +
    static void test (void )
    +
    +static
    +
    + +

    Self-test implementations.

    +
    Returns
    void
    +
    90 {
    +
    91 /* https://en.wikipedia.org/wiki/Subsequence#Applications */
    +
    92 int **L, **B, j, l1, l2;
    +
    93
    +
    94 char *s1 = "ACGGTGTCGTGCTATGCTGATGCTGACTTATATGCTA";
    +
    95 char *s2 = "CGTTCGGCTATCGTACGTTCTATTCTATGATTTCTAA";
    +
    96 char *lcs;
    +
    97
    +
    98 l1 = strlen(s1);
    +
    99 l2 = strlen(s2);
    +
    100
    +
    101 L = (int **)calloc(l1+1, sizeof(int *));
    +
    102 B = (int **)calloc(l1+1, sizeof(int *));
    +
    103
    +
    104 if (!L) {
    +
    105 perror("calloc: ");
    +
    106 exit(1);
    +
    107 }
    +
    108 if (!B) {
    +
    109 perror("calloc: ");
    +
    110 exit(1);
    +
    111 }
    +
    112 for (j = 0; j <= l1; j++) {
    +
    113 L[j] = (int *)calloc(l2+1, sizeof(int));
    +
    114 if (!L[j]) {
    +
    115 perror("calloc: ");
    +
    116 exit(1);
    +
    117 }
    +
    118 B[j] = (int *)calloc(l2+1, sizeof(int));
    +
    119 if (!L[j]) {
    +
    120 perror("calloc: ");
    +
    121 exit(1);
    +
    122 }
    +
    123 }
    +
    124
    +
    125 lcslen(s1, s2, l1, l2, L, B);
    +
    126 lcs = lcsbuild(s1, l1, l2, L, B);
    +
    127
    +
    128 assert(L[l1][l2] == 27);
    +
    129 assert(strcmp(lcs, "CGTTCGGCTATGCTTCTACTTATTCTA") == 0);
    +
    130
    +
    131 printf("S1: %s\tS2: %s\n", s1, s2);
    +
    132 printf("LCS len:%3d\n", L[l1][l2]);
    +
    133 printf("LCS: %s\n", lcs);
    +
    134
    +
    135 free(lcs);
    +
    136 for (j = 0; j <= l1; j++)
    +
    137 free(L[j]), free(B[j]);
    +
    138 free(L);
    +
    139 free(B);
    +
    140
    +
    141 printf("All tests have successfully passed!\n");
    +
    142}
    +
    char * lcsbuild(const char *s1, int l1, int l2, int **L, int **B)
    @breif Builds the LCS according to B using a traceback approach
    Definition: lcs.c:59
    +
    void lcslen(const char *s1, const char *s2, int l1, int l2, int **L, int **B)
    @breif Computes LCS between s1 and s2 using a dynamic-programming approach
    Definition: lcs.c:27
    +
    #define free(ptr)
    This macro replace the standard free function with free_dbg.
    Definition: malloc_dbg.h:26
    +
    +Here is the call graph for this function:
    +
    +
    +
    +
    + +
    +
    +
    +
    + + + + diff --git a/db/de1/lcs_8c.js b/db/de1/lcs_8c.js new file mode 100644 index 00000000..a0225323 --- /dev/null +++ b/db/de1/lcs_8c.js @@ -0,0 +1,7 @@ +var lcs_8c = +[ + [ "lcsbuild", "db/de1/lcs_8c.html#a741c9173a9fef243518f5c2352b81fc0", null ], + [ "lcslen", "db/de1/lcs_8c.html#ac107a0b0233dacb9e8cd3a983d6740b6", null ], + [ "main", "db/de1/lcs_8c.html#a0ddf1224851353fc92bfbff6f499fa97", null ], + [ "test", "db/de1/lcs_8c.html#aa8dca7b867074164d5f45b0f3851269d", null ] +]; \ No newline at end of file diff --git a/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.map b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.map new file mode 100644 index 00000000..423e29f0 --- /dev/null +++ b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.md5 b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.md5 new file mode 100644 index 00000000..4111832a --- /dev/null +++ b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.md5 @@ -0,0 +1 @@ +6f3f9dfa107f08ce6a4553449a150e13 \ No newline at end of file diff --git a/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.svg b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.svg new file mode 100644 index 00000000..11b7001c --- /dev/null +++ b/db/de1/lcs_8c_a0ddf1224851353fc92bfbff6f499fa97_cgraph.svg @@ -0,0 +1,66 @@ + + + + + + +main + + +Node1 + + +main + + + + + +Node2 + + +test + + + + + +Node1->Node2 + + + + + +Node3 + + +lcsbuild + + + + + +Node2->Node3 + + + + + +Node4 + + +lcslen + + + + + +Node2->Node4 + + + + + diff --git a/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.map b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.map new file mode 100644 index 00000000..bef8d1e4 --- /dev/null +++ b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.md5 b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.md5 new file mode 100644 index 00000000..84a3ecbb --- /dev/null +++ b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.md5 @@ -0,0 +1 @@ +6ad40ff4cb2627f0491bc779dcdf796b \ No newline at end of file diff --git a/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg new file mode 100644 index 00000000..5a158143 --- /dev/null +++ b/db/de1/lcs_8c_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg @@ -0,0 +1,51 @@ + + + + + + +test + + +Node1 + + +test + + + + + +Node2 + + +lcsbuild + + + + + +Node1->Node2 + + + + + +Node3 + + +lcslen + + + + + +Node1->Node3 + + + + + diff --git a/de/d58/structquaternion__.html b/de/d58/structquaternion__.html index f9f0639f..3a3c6b27 100644 --- a/de/d58/structquaternion__.html +++ b/de/d58/structquaternion__.html @@ -116,41 +116,41 @@ Collaboration diagram for quaternion_: - - - - - + + - - - - - - + + + + + - - - - + + - - - + - - + - - - - - - + + + + + +

    Data Fields

    +
    union {
    +
       float   w
     real part of quaternion
     
    +
     real part of quaternion
     
       float   q0
     real part of quaternion
     
    }; 
     dual part of quaternion
     
    +
     real part of quaternion
     
    }; 
     dual part of quaternion
     
    union {
    +
       vec_3d   dual
     can be a 3D vector
     
    +
     can be a 3D vector
     
       struct {
    +
          float   q1
     
    +
     
          float   q2
     
    +
     
          float   q3
     
       } 
     or individual values
     
    }; 
     
     
       } 
     or individual values
     
    }; 
     

    Detailed Description

    a Quaternion type represented using a scalar \(w\) or \(q_0\) and a 3D vector \(\left(q_1,q_2,q_3\right)\)

    diff --git a/df/d58/md_leetcode__r_e_a_d_m_e.html b/df/d58/md_leetcode__r_e_a_d_m_e.html index b21b7c88..fbdee01b 100644 --- a/df/d58/md_leetcode__r_e_a_d_m_e.html +++ b/df/d58/md_leetcode__r_e_a_d_m_e.html @@ -101,13 +101,13 @@ $(document).ready(function(){initNavTree('df/d58/md_leetcode__r_e_a_d_m_e.html',

    We're glad you're interested in adding C LeetCode solutions to the repository.\ Here we'll be explaining how to contribute to LeetCode solutions properly.

    -

    +

    💻 Cloning/setting up the project 💻

    First off, you'll need to fork the repository here.\ Then, you'll need to clone the repository to your local machine.

    git clone https://github.com/your-username/C.git

    After that, you'll need to create a new branch for your solution.

    git checkout -b solution/your-solution-name
    -

    +

    📝 Adding a new solution 📝

    All LeetCode problems can be found here.\ If you have a solution to any of these problems (which are not being repeated), that's great! Here are the steps:

      @@ -127,12 +127,12 @@ $(document).ready(function(){initNavTree('df/d58/md_leetcode__r_e_a_d_m_e.html',
    1. Doxygen documentation isn't used in LeetCode solutions. Simple/small documentation or comments should be fine.
    2. Don't include libraries/headers such as stdio.h. Your file should be the solution to the problem only.
    -

    +

    📜 Adding your new solution to the list 📜

    Great! You've added your solution. Now, you'll have to add it to leetcode/DIRECTORY.md.\ Please use numerical order. For example: if the solution's number is 98, add your solution after 97, if available.

    This is the required format for new solutinos:

    | <solution number> | [<solution name>](<leetcode link to problem>) | [C](./src/<filename>.c) | <difficulty> |
    -

    +

    📦 Committing your changes 📦

    Once you're done with adding a new LeetCode solution, it's time we make a pull request.

      diff --git a/dir_8a20dd5bfd5341a725342bf72b6b686f.html b/dir_8a20dd5bfd5341a725342bf72b6b686f.html new file mode 100644 index 00000000..d7e5283f --- /dev/null +++ b/dir_8a20dd5bfd5341a725342bf72b6b686f.html @@ -0,0 +1,120 @@ + + + + + + + +Algorithms_in_C: dynamic_programming Directory Reference + + + + + + + + + + + + + + + +
      +
      + + + + + + +
      +
      Algorithms_in_C 1.0.0 +
      +
      Set of algorithms implemented in C.
      +
      +
      + + + + + + + +
      +
      + +
      +
      +
      + +
      + +
      +
      + + +
      +
      +
      +
      +
      +
      Loading...
      +
      Searching...
      +
      No Matches
      +
      +
      +
      +
      + +
      +
      dynamic_programming Directory Reference
      +
      +
      + + + + + +

      +Files

      file  lcs.c
       Longest Common Subsequence algorithm
       
      +
      +
      + + + + diff --git a/dir_8a20dd5bfd5341a725342bf72b6b686f.js b/dir_8a20dd5bfd5341a725342bf72b6b686f.js new file mode 100644 index 00000000..c026d0a0 --- /dev/null +++ b/dir_8a20dd5bfd5341a725342bf72b6b686f.js @@ -0,0 +1,4 @@ +var dir_8a20dd5bfd5341a725342bf72b6b686f = +[ + [ "lcs.c", "db/de1/lcs_8c.html", "db/de1/lcs_8c" ] +]; \ No newline at end of file diff --git a/files.html b/files.html index 3912ded2..3a805c45 100644 --- a/files.html +++ b/files.html @@ -160,150 +160,152 @@ $(document).ready(function(){initNavTree('files.html',''); initResizable(); });  min_printf.hImplementation of a function similar to printf  test_malloc_dbg.cFile used to test the malloc_dbg, calloc_dbg and free_dbg functions  test_min_printf.cFile used to test min_printf function -  exercism -  acronym - acronym.h -  hello_world - hello_world.h -  isogram - isogram.h -  rna_transcription - rna_transcription.h -  word_count - word_count.h -  games - naval_battle.cnaval_battle implementation in C using only the stdio.h for Standard Input and Output -  geometry - geometry_datatypes.hGeneric header that provides data types for 3D vectors and quaternions - quaternions.cFunctions related to 3D quaternions and Euler angles - vectors_3d.cFunctions related to 3D vector operations -  graphics - spirograph.cImplementation of Spirograph -  greedy_approach - prim.cPrim's algorithm implementation in C to find the MST of a weighted, connected graph -  hash - hash_adler32.c32-bit Adler hash algorithm - hash_crc32.c32-bit CRC hash algorithm - hash_djb2.cDJB2 hash algorithm - hash_sdbm.cSDBM hash algorithm - hash_xor8.c8-bit XOR hash algorithm for ASCII characters -  leetcode -  src - 6.cImplementation of the ZigZag Conversion Leetcode problem -  machine_learning - adaline_learning.cAdaptive Linear Neuron (ADALINE) implementation - k_means_clustering.cK Means Clustering Algorithm implemented - kohonen_som_topology.cKohonen self organizing map (topological map) - kohonen_som_trace.cKohonen self organizing map (data tracing) -  math - cantor_set.cProgram to generate Cantor ternary set - cartesian_to_polar.cFunction to convert a Cartesian co-ordinate to polar form - collatz.cImplementation of Collatz' conjecture - factorial_large_number.cCompute factorial of arbitrarily large numbers by storing individual digits in a byte - fibonacci_fast.cCompute \(m^{mth}\) Fibonacci number using the formulae: - fibonacci_formula.cFinding Fibonacci number of any n number using [Binet's closed form formula](https://en.wikipedia.org/wiki/Fibonacci_number#Binet's_formula) compute \(f_{nth}\) Fibonacci number using the binet's formula: Fn = 1√5 * (1+√5 / 2)^n+1 − 1√5 * (1−√5 / 2)^n+1 - palindrome.cProgram to identify if a number is palindrome number or not - prime.cProgram to identify if a number is prime number or not - prime_sieve.cPrime Sieve algorithm implementation - strong_number.cStrong 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) -  misc - poly_add.cImplementation of [Addition of two polynomials] (https://en.wikipedia.org/wiki/Polynomial#Addition) - postfix_evaluation.cPostfix evaluation algorithm implementation - rot13.cROT13 is a simple letter substitution cipher that replaces a letter with the 13th letter after it in the alphabet - run_length_encoding.cEncode a null terminated string using Run-length encoding - sudoku_solver.cSudoku Solver using recursive implementation of brute-force algorithm - union_find.cUnion find algorithm -  numerical_methods - durand_kerner_roots.cCompute all possible approximate roots of any given polynomial using Durand Kerner algorithm - lu_decompose.cLU decomposition of a square matrix - newton_raphson_root.cFind approximate solution for \(f(x) = 0\) using Newton-Raphson interpolation algorithm - ode_forward_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using forward Euler method - ode_midpoint_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using midpoint Euler method - ode_semi_implicit_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using semi implicit Euler method - qr_decompose.hLibrary functions to compute QR decomposition of a given matrix - qr_decomposition.cProgram to compute the QR decomposition of a given matrix - qr_eigen_values.cCompute real eigen values and eigen vectors of a symmetric matrix using QR decomposition method - realtime_stats.cCompute statistics for data entered in rreal-time -  process_scheduling_algorithms - non_preemptive_priority_scheduling.cNon-Preemptive Priority Scheduling is a scheduling algorithm that selects the tasks to execute based on priority -  project_euler -  problem_1 - sol1.cProblem 1 solution - sol2.cProblem 1 solution - sol3.cProblem 1 solution - sol4.cProblem 1 solution -  problem_10 - sol1.cProblem 10 solution - sol2.cProblem 10 solution -  problem_12 - sol1.cProblem 12 solution -  problem_13 - sol1.cProblem 13 solution -  problem_14 - sol1.cProblem 14 solution -  problem_15 - sol1.cProblem 15 solution -  problem_16 - sol1.cProblem 16 solution -  problem_19 - sol1.cProblem 19 solution -  problem_2 - so1.cProblem 2 solution -  problem_20 - sol1.cProblem 20 solution -  problem_21 - sol1.cProblem 21 solution -  problem_22 - sol1.cProblem 22 solution -  problem_23 - sol1.cProblem 23 solution - sol2.cProblem 23 solution - optimization using look-up array -  problem_25 - sol1.cProblem 25 solution implemented using arbitrarily large numbers represented as arrays -  problem_26 - sol1.cProblem 26 solution -  problem_3 - sol1.cProblem 3 solution - sol2.cProblem 3 solution -  problem_4 - sol.cProblem 4 solution -  problem_401 - sol1.cProblem 401 solution - Sum of squares of divisors -  problem_5 - sol1.cProblem 5 solution - Naive algorithm (slowest) - sol2.cProblem 5 solution - Naive algorithm (Improved over problem_5/sol1.c) - sol3.cProblem 5 solution (Fastest) -  problem_6 - sol.cProblem 6 solution -  problem_7 - sol.cProblem 7 solution - sol2.cProblem 7 solution -  problem_8 - sol1.cProblem 8 solution - sol2.cProblem 8 solution -  problem_9 - sol1.cProblem 9 solution - A naive implementation - sol2.cProblem 9 solution -  searching - binary_search.cProgram to perform binary search of a target value in a given sorted array - exponential_search.cExponential Search - floyd_cycle_detection_algorithm.cImplementation of Floyd's Cycle Detection algorithm - jump_search.cImplementation of jump search algorithm - modified_binary_search.cModified binary search algorithm - sentinel_linear_search.cLinear Search with Sentinel algorithm implementation -  sorting - bead_sort.cSorting of array list using bead sort - bubble_sort.cBubble sort algorithm implementation - bubble_sort_2.cImplementation of Bubble sort algorithm - bubble_sort_recursion.cBubble sort algorithm implementation using recursion - heap_sort_2.cHeap Sort implementation - insertion_sort.cInsertion sort algorithm implementation - insertion_sort_recursive.cInsertion sort algorithm implementation - merge_sort.cImplementation of merge sort algorithm - odd_even_sort.cOdd Even Sort implementation - selection_sort.cSelection sort algorithm implementation - selection_sort_recursive.cSelection Sort implementation using recursion - shell_sort2.cShell sort algorithm implementation +  dynamic_programming + lcs.cLongest Common Subsequence algorithm +  exercism +  acronym + acronym.h +  hello_world + hello_world.h +  isogram + isogram.h +  rna_transcription + rna_transcription.h +  word_count + word_count.h +  games + naval_battle.cnaval_battle implementation in C using only the stdio.h for Standard Input and Output +  geometry + geometry_datatypes.hGeneric header that provides data types for 3D vectors and quaternions + quaternions.cFunctions related to 3D quaternions and Euler angles + vectors_3d.cFunctions related to 3D vector operations +  graphics + spirograph.cImplementation of Spirograph +  greedy_approach + prim.cPrim's algorithm implementation in C to find the MST of a weighted, connected graph +  hash + hash_adler32.c32-bit Adler hash algorithm + hash_crc32.c32-bit CRC hash algorithm + hash_djb2.cDJB2 hash algorithm + hash_sdbm.cSDBM hash algorithm + hash_xor8.c8-bit XOR hash algorithm for ASCII characters +  leetcode +  src + 6.cImplementation of the ZigZag Conversion Leetcode problem +  machine_learning + adaline_learning.cAdaptive Linear Neuron (ADALINE) implementation + k_means_clustering.cK Means Clustering Algorithm implemented + kohonen_som_topology.cKohonen self organizing map (topological map) + kohonen_som_trace.cKohonen self organizing map (data tracing) +  math + cantor_set.cProgram to generate Cantor ternary set + cartesian_to_polar.cFunction to convert a Cartesian co-ordinate to polar form + collatz.cImplementation of Collatz' conjecture + factorial_large_number.cCompute factorial of arbitrarily large numbers by storing individual digits in a byte + fibonacci_fast.cCompute \(m^{mth}\) Fibonacci number using the formulae: + fibonacci_formula.cFinding Fibonacci number of any n number using [Binet's closed form formula](https://en.wikipedia.org/wiki/Fibonacci_number#Binet's_formula) compute \(f_{nth}\) Fibonacci number using the binet's formula: Fn = 1√5 * (1+√5 / 2)^n+1 − 1√5 * (1−√5 / 2)^n+1 + palindrome.cProgram to identify if a number is palindrome number or not + prime.cProgram to identify if a number is prime number or not + prime_sieve.cPrime Sieve algorithm implementation + strong_number.cStrong 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) +  misc + poly_add.cImplementation of [Addition of two polynomials] (https://en.wikipedia.org/wiki/Polynomial#Addition) + postfix_evaluation.cPostfix evaluation algorithm implementation + rot13.cROT13 is a simple letter substitution cipher that replaces a letter with the 13th letter after it in the alphabet + run_length_encoding.cEncode a null terminated string using Run-length encoding + sudoku_solver.cSudoku Solver using recursive implementation of brute-force algorithm + union_find.cUnion find algorithm +  numerical_methods + durand_kerner_roots.cCompute all possible approximate roots of any given polynomial using Durand Kerner algorithm + lu_decompose.cLU decomposition of a square matrix + newton_raphson_root.cFind approximate solution for \(f(x) = 0\) using Newton-Raphson interpolation algorithm + ode_forward_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using forward Euler method + ode_midpoint_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using midpoint Euler method + ode_semi_implicit_euler.cSolve a multivariable first order ordinary differential equation (ODEs) using semi implicit Euler method + qr_decompose.hLibrary functions to compute QR decomposition of a given matrix + qr_decomposition.cProgram to compute the QR decomposition of a given matrix + qr_eigen_values.cCompute real eigen values and eigen vectors of a symmetric matrix using QR decomposition method + realtime_stats.cCompute statistics for data entered in rreal-time +  process_scheduling_algorithms + non_preemptive_priority_scheduling.cNon-Preemptive Priority Scheduling is a scheduling algorithm that selects the tasks to execute based on priority +  project_euler +  problem_1 + sol1.cProblem 1 solution + sol2.cProblem 1 solution + sol3.cProblem 1 solution + sol4.cProblem 1 solution +  problem_10 + sol1.cProblem 10 solution + sol2.cProblem 10 solution +  problem_12 + sol1.cProblem 12 solution +  problem_13 + sol1.cProblem 13 solution +  problem_14 + sol1.cProblem 14 solution +  problem_15 + sol1.cProblem 15 solution +  problem_16 + sol1.cProblem 16 solution +  problem_19 + sol1.cProblem 19 solution +  problem_2 + so1.cProblem 2 solution +  problem_20 + sol1.cProblem 20 solution +  problem_21 + sol1.cProblem 21 solution +  problem_22 + sol1.cProblem 22 solution +  problem_23 + sol1.cProblem 23 solution + sol2.cProblem 23 solution - optimization using look-up array +  problem_25 + sol1.cProblem 25 solution implemented using arbitrarily large numbers represented as arrays +  problem_26 + sol1.cProblem 26 solution +  problem_3 + sol1.cProblem 3 solution + sol2.cProblem 3 solution +  problem_4 + sol.cProblem 4 solution +  problem_401 + sol1.cProblem 401 solution - Sum of squares of divisors +  problem_5 + sol1.cProblem 5 solution - Naive algorithm (slowest) + sol2.cProblem 5 solution - Naive algorithm (Improved over problem_5/sol1.c) + sol3.cProblem 5 solution (Fastest) +  problem_6 + sol.cProblem 6 solution +  problem_7 + sol.cProblem 7 solution + sol2.cProblem 7 solution +  problem_8 + sol1.cProblem 8 solution + sol2.cProblem 8 solution +  problem_9 + sol1.cProblem 9 solution - A naive implementation + sol2.cProblem 9 solution +  searching + binary_search.cProgram to perform binary search of a target value in a given sorted array + exponential_search.cExponential Search + floyd_cycle_detection_algorithm.cImplementation of Floyd's Cycle Detection algorithm + jump_search.cImplementation of jump search algorithm + modified_binary_search.cModified binary search algorithm + sentinel_linear_search.cLinear Search with Sentinel algorithm implementation +  sorting + bead_sort.cSorting of array list using bead sort + bubble_sort.cBubble sort algorithm implementation + bubble_sort_2.cImplementation of Bubble sort algorithm + bubble_sort_recursion.cBubble sort algorithm implementation using recursion + heap_sort_2.cHeap Sort implementation + insertion_sort.cInsertion sort algorithm implementation + insertion_sort_recursive.cInsertion sort algorithm implementation + merge_sort.cImplementation of merge sort algorithm + odd_even_sort.cOdd Even Sort implementation + selection_sort.cSelection sort algorithm implementation + selection_sort_recursive.cSelection Sort implementation using recursion + shell_sort2.cShell sort algorithm implementation diff --git a/files_dup.js b/files_dup.js index fa934b10..7f1203d6 100644 --- a/files_dup.js +++ b/files_dup.js @@ -5,6 +5,7 @@ var files_dup = [ "conversions", "dir_9babc524d57e25f3d9f4179cabc3599e.html", "dir_9babc524d57e25f3d9f4179cabc3599e" ], [ "data_structures", "dir_2e746e9d06bf2d8ff842208bcc6ebcfc.html", "dir_2e746e9d06bf2d8ff842208bcc6ebcfc" ], [ "developer_tools", "dir_abf1a26ece768c4076e73592705ae077.html", "dir_abf1a26ece768c4076e73592705ae077" ], + [ "dynamic_programming", "dir_8a20dd5bfd5341a725342bf72b6b686f.html", "dir_8a20dd5bfd5341a725342bf72b6b686f" ], [ "exercism", "dir_48bf5503321d91c557399989fed5dabd.html", "dir_48bf5503321d91c557399989fed5dabd" ], [ "games", "dir_4b6f782e158b0b98da980a0e11a23a15.html", "dir_4b6f782e158b0b98da980a0e11a23a15" ], [ "geometry", "dir_e3380d2178455503f266746fb14246a5.html", "dir_e3380d2178455503f266746fb14246a5" ], diff --git a/globals_func_i.html b/globals_func_i.html index 4f313e16..d49ded05 100644 --- a/globals_func_i.html +++ b/globals_func_i.html @@ -119,8 +119,8 @@ $(document).ready(function(){initNavTree('globals_func_i.html',''); initResizabl
    1. isEmpty() : infix_to_postfix.c, infix_to_postfix2.c
    2. isOprnd() : infix_to_postfix.c
    3. isPalindrome() : palindrome.c
    4. -
    5. isprime() : sol1.c
    6. isPrime() : prime.c
    7. +
    8. isprime() : sol1.c
    9. isStrong() : strong_number.c
    10. diff --git a/globals_func_l.html b/globals_func_l.html index a7275ef0..2205fa67 100644 --- a/globals_func_l.html +++ b/globals_func_l.html @@ -103,6 +103,8 @@ $(document).ready(function(){initNavTree('globals_func_l.html',''); initResizabl
    11. l_length() : non_preemptive_priority_scheduling.c
    12. lazy_sort() : sol1.c
    13. lcm() : sol3.c
    14. +
    15. lcsbuild() : lcs.c
    16. +
    17. lcslen() : lcs.c
    18. len() : vector.c
    19. lu_decomposition() : lu_decompose.c
    20. diff --git a/globals_func_m.html b/globals_func_m.html index 4fe5048c..f9c353b0 100644 --- a/globals_func_m.html +++ b/globals_func_m.html @@ -100,7 +100,7 @@ $(document).ready(function(){initNavTree('globals_func_m.html',''); initResizabl  

      - m -