chore: fix minor doc. issues and indentation

This commit is contained in:
David Leal 2023-06-12 05:53:58 +00:00
parent 30fd140343
commit 709e37973a

View File

@ -1,12 +1,15 @@
/** /**
* @file * @file
* @brief [Longest Common Subsequence](https://en.wikipedia.org/wiki/Longest_common_subsequence_problem) algorithm * @brief [Longest Common
* Subsequence](https://en.wikipedia.org/wiki/Longest_common_subsequence_problem)
* algorithm
* @details * @details
* From Wikipedia: The longest common subsequence (LCS) problem is the problem * 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 * of finding the longest subsequence common to all sequences in a set of
* (often just two sequences). * sequences (often just two sequences).
* @author [Kurtz](https://github.com/itskurtz) * @author [Kurtz](https://github.com/itskurtz)
*/ */
#include <stdio.h> /* for io operations */ #include <stdio.h> /* for io operations */
#include <stdlib.h> /* for memory management & exit */ #include <stdlib.h> /* for memory management & exit */
#include <string.h> /* for string manipulation & ooperations */ #include <string.h> /* for string manipulation & ooperations */
@ -15,13 +18,13 @@
enum {LEFT, UP, DIAG}; enum {LEFT, UP, DIAG};
/** /**
* @breif Computes LCS between s1 and s2 using a dynamic-programming approach * @brief Computes LCS between s1 and s2 using a dynamic-programming approach
* @param1 s1 first null-terminated string * @param s1 first null-terminated string
* @param2 s2 second null-terminated string * @param s2 second null-terminated string
* @param3 l1 length of s1 * @param l1 length of s1
* @param4 l2 length of s2 * @param l2 length of s2
* @param5 L matrix of size l1 x l2 * @param L matrix of size l1 x l2
* @param6 B matrix of size l1 x l2 * @param B matrix of size l1 x l2
* @returns void * @returns void
*/ */
void lcslen(const char *s1, const char *s2, int l1, int l2, int **L, int **B) { void lcslen(const char *s1, const char *s2, int l1, int l2, int **L, int **B) {
@ -50,12 +53,12 @@ void lcslen(const char *s1, const char *s2, int l1, int l2, int **L, int **B) {
} }
/** /**
* @breif Builds the LCS according to B using a traceback approach * @brief Builds the LCS according to B using a traceback approach
* @param1 s1 first null-terminated string * @param s1 first null-terminated string
* @param2 l1 length of s1 * @param l1 length of s1
* @param3 l2 length of s2 * @param l2 length of s2
* @param4 L matrix of size l1 x l2 * @param L matrix of size l1 x l2
* @param5 B matrix of size l1 x l2 * @param B matrix of size l1 x l2
* @returns lcs longest common subsequence * @returns lcs longest common subsequence
*/ */
char *lcsbuild(const char *s1, int l1, int l2, int **L, int **B) { char *lcsbuild(const char *s1, int l1, int l2, int **L, int **B) {
@ -78,15 +81,18 @@ char *lcsbuild(const char *s1, int l1, int l2, int **L, int **B) {
i = i - 1; i = i - 1;
j = j - 1; j = j - 1;
} }
else if (B[i][j] == LEFT) { else if (B[i][j] == LEFT)
{
j = j - 1; j = j - 1;
} }
else { else
{
i = i - 1; i = i - 1;
} }
} }
return lcs; return lcs;
} }
/** /**
* @brief Self-test implementations * @brief Self-test implementations
* @returns void * @returns void
@ -136,8 +142,9 @@ static void test() {
printf("LCS len:%3d\n", L[l1][l2]); printf("LCS len:%3d\n", L[l1][l2]);
printf("LCS: %s\n", lcs); printf("LCS: %s\n", lcs);
free(lcs); free(lcs);
for (j = 0; j <= l1; j++) { for (j = 0; j <= l1; j++)
{
free(L[j]), free(B[j]); free(L[j]), free(B[j]);
} }
free(L); free(L);