Compare commits
No commits in common. "7258ae92378c9b5a85ef649c95714701039899df" and "c46eb7b3aadc74c20f32ea920b51625de061b7ff" have entirely different histories.
7258ae9237
...
c46eb7b3aa
14
README
14
README
|
@ -4,17 +4,6 @@
|
|||
|
||||
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/Suffix_tree
|
||||
RES: en.wikipedia.org/wiki/Radix_tree
|
||||
|
@ -59,8 +48,7 @@ LEAKS
|
|||
|
||||
TODO
|
||||
|
||||
* feat: add length option - streencpy
|
||||
* feat: ++ strong or loose -- comparison option
|
||||
* everything done so far
|
||||
|
||||
COMMITS
|
||||
|
||||
|
|
15
streecmp.c
15
streecmp.c
|
@ -115,18 +115,3 @@ int streecmp(struct nod *nod, char *str) {
|
|||
|
||||
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;
|
||||
}
|
||||
|
|
|
@ -21,6 +21,5 @@ struct nod *mknod(struct nod *nod, int loc);
|
|||
int mkstr(struct nod *nod, char *str);
|
||||
int gentree(struct nod *nod, char *strs, char *delim);
|
||||
int streecmp(struct nod *nod, char *str);
|
||||
int streencmp(struct nod *nod, char *str, int len);
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue
Block a user