In C, I need to store a list of short strings (char*) that can be relatively large (thousands of items).
Strings can be removed or inserted but not modified, and the order is not important.
I don't know what is the more efficient data structure to do this.
I could use a struct :
struct node_s {
char *str;
node_s *next;
}
or an array of char * :
char **strings;
I don't need to access directly the strings, I just need them to exist because another data structure (a radix trie) beside maintains pointers on some parts of the strings.
more efficient? Efficient in terms of insertion, deletion, shifting, searching?