Compare commits

..

No commits in common. "7258ae92378c9b5a85ef649c95714701039899df" and "c46eb7b3aadc74c20f32ea920b51625de061b7ff" have entirely different histories.

3 changed files with 1 additions and 29 deletions

14
README
View File

@ -4,17 +4,6 @@
Fast*er* string comparison - an alternative to thousands of strcmp calls Fast*er* string comparison - an alternative to thousands of strcmp calls
This is an O(n) solution - n being the length of the string to be checked.
A plus is that this method will stay O(n) *no matter the length of the string
nor the number of strings to be checked against*.
Potential minuses might be the additional memory needed to store the trie
data structure or the computational time required to generate the tree before
utilizing it. Therefore, users are advised to use a secure, fast hashmap
instead of streecmp. streecmp is only applied to specific scenarios where
a rather simple or fast solution for string comparison is required so the
project moves on.
RES: en.wikipedia.org/wiki/Trie RES: en.wikipedia.org/wiki/Trie
RES: en.wikipedia.org/wiki/Suffix_tree RES: en.wikipedia.org/wiki/Suffix_tree
RES: en.wikipedia.org/wiki/Radix_tree RES: en.wikipedia.org/wiki/Radix_tree
@ -59,8 +48,7 @@ LEAKS
TODO TODO
* feat: add length option - streencpy * everything done so far
* feat: ++ strong or loose -- comparison option
COMMITS COMMITS

View File

@ -115,18 +115,3 @@ int streecmp(struct nod *nod, char *str) {
return streecmp(target, str+1); return streecmp(target, str+1);
} }
int streencmp(struct nod *nod, char *str, int len) {
for (int i = 0; i < len; i++) {
struct nod *target = nod->pool[*str];
if (target == NULL) {
return 0;
}
if (target->val.cval == '\0') {
return target->val.ival;
}
}
return 0;
}

View File

@ -21,6 +21,5 @@ struct nod *mknod(struct nod *nod, int loc);
int mkstr(struct nod *nod, char *str); int mkstr(struct nod *nod, char *str);
int gentree(struct nod *nod, char *strs, char *delim); int gentree(struct nod *nod, char *strs, char *delim);
int streecmp(struct nod *nod, char *str); int streecmp(struct nod *nod, char *str);
int streencmp(struct nod *nod, char *str, int len);
#endif #endif