Skip to content

Commit

Permalink
README updated
Browse files Browse the repository at this point in the history
  • Loading branch information
felipelouza committed Jan 5, 2016
1 parent b26c1e7 commit d0bf9b4
Show file tree
Hide file tree
Showing 8 changed files with 59 additions and 37 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ LIBOBJ = \
lib/file.o\
lib/suffix_array.o\
external/malloc_count/malloc_count.o\
gsais.o\
gsaca-k.o
src/gsais.o\
src/gsaca-k.o

all: compile

clean:
\rm lib/*.o *.o external/*.o gsais -v
\rm lib/*.o src/*.o external/*.o gsais -v

compile: main.c ${LIBOBJ}
$(CC) $(CFLAGS) $(LFLAGS) -o gsais main.c ${LIBOBJ}
Expand Down
12 changes: 7 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#gsa-is

This code is an implementation of gSAIS and gSACA-K, which are modifications of
SAIS [1] and SACA-K [2] to compute the generalized suffix array,
maintaining their theoretical bounds and improving their practical performance.
This code is an implementation of gSAIS and gSACA-K [1], which extend the
linear­time suffix sorting algorithms SAIS [2] and SACA-K [3] to compute the
generalized suffix array.

Overall, SACA-K's time-space trade-off is Pareto optimal compared to the all
other algorithms in the experiments.
Expand Down Expand Up @@ -315,8 +315,10 @@ MODE parameter specifies which algorithm is called by main.c:

##references

\[1\] G. Nong, S. Zhang, and W. H. Chan, “Two efficient algorithms for linear time suffix array construction,” IEEE Trans. Comput., vol. 60, no. 10, pp. 1471–1484, 2011
\[1\] Louza, F. A., Gog, S., Telles, G. P, "Induced Suffix Sorting for String Collections", submitted to DCC, 2016.

\[2\] Nong, G. Practical linear-time O(1)-workspace suffix sorting for constant alphabets,” ACM Trans. Inform. Syst., vol. 31, no. 3, pp. 1–15, 2013
\[2\] Nong G., Zhang S., Chan W. H., "Two efficient algorithms for linear time suffix array construction", IEEE Trans. Comput., vol. 60, no. 10, pp. 1471–1484, 2011

\[3\] Nong, G., "Practical linear-time O(1)-workspace suffix sorting for constant alphabets", ACM Trans. Inform. Syst., vol. 31, no. 3, pp. 1–15, 2013


22 changes: 0 additions & 22 deletions gsaca-k.h

This file was deleted.

4 changes: 2 additions & 2 deletions main.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@
#include "lib/file.h"
#include "lib/suffix_array.h"
#include "external/malloc_count/malloc_count.h"
#include "gsais.h"
#include "gsaca-k.h"
#include "src/gsais.h"
#include "src/gsaca-k.h"

#define DEBUG 0

Expand Down
File renamed without changes.
32 changes: 32 additions & 0 deletions src/gsaca-k.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*
* Authors: Felipe A. Louza, Simon Gog, Guilherme P. Telles
* contact: [email protected]
* 01/09/2015
*/

/*
* This code is a modification of SACA-K algorithm by G. Nong, which can be
* retrieved at: http://code.google.com/p/ge-nong/
*
* Our version of SACA-K, called gSACA-K, maintain the theoretical bounds of the
* original algorithm to construct the generalized suffix array.
*
*/

#ifndef GSACA_K_H
#define GSACA_K_H

#include <stdlib.h>
#include <stdio.h>

#include "../lib/utils.h"

int_t SACA_K(int_t *s, uint_t *SA,
uint_t n, unsigned int K,
uint_t m, int cs, int level);

int_t gSACA_K(unsigned char *s, uint_t *SA,
uint_t n, unsigned int K,
uint_t m, int cs, int level, unsigned char separator);

#endif
File renamed without changes.
20 changes: 15 additions & 5 deletions gsais.h → src/gsais.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,17 @@
// This is (a modification of) SA-IS algorithm, which can be retrieved at:
// http://code.google.com/p/ge-nong/
// Our version of SAIS, called gSAIS, maintain the theoretical bounds of the
// original algorithm to construct the generalized suffix array.
/*
* Authors: Felipe A. Louza, Simon Gog, Guilherme P. Telles
* contact: [email protected]
* 01/09/2015
*/

/*
* This code is a modification of SA-IS algorithm by G. Nong, which can be
* retrieved at: http://code.google.com/p/ge-nong/
*
* Our version of SA-IS, called gSA-IS, maintain the theoretical bounds of the
* original algorithm to construct the generalized suffix array.
*
*/

#ifndef GSAIS_H
#define GSAIS_H
Expand All @@ -11,7 +21,7 @@
#include <memory.h>
#include <time.h>

#include "lib/utils.h"
#include "../lib/utils.h"

#define tget(i) ( (t[(i)/8]&mask[(i)%8]) ? 1 : 0 )
#define tset(i, b) t[(i)/8]=(b) ? (mask[(i)%8]|t[(i)/8]) : ((~mask[(i)%8])&t[(i)/8])
Expand Down

0 comments on commit d0bf9b4

Please sign in to comment.