Skip to content

Simple C library that implements useful data structures. I'm planning to revisit this project and give it quite the upgrade.

License

Notifications You must be signed in to change notification settings

jacksongable/Collections

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Collections

Collections is a C library that implements useful data structures for developers. At this time, a singly linked list and a stack have been implemented. Trees, maps, and more are also on the way.

Stay tuned!

Usage

Linked List

A linked list is a list of nodes, where each node contains a data element and a pointer to the next node.

Creating a new list

A linkedlist can be instantiated via alloc_ll(), which returns a pointer to a newly allocated linked list.

Adding an element

To add an element, call ll_add(linkedlist *list, void *element), where list is a pointer to the linked list to add the element to, and element is a pointer to the element you wish to add. This function returns the macro LINKEDLIST_OK on success.

Getting an element

To get an element, call ll_get(linkedlist *list, unsigned int position), where list is a pointer to the linked list to get the element from, and position is the position of the element you wish to fetch from the list.

This function returns a void pointer to the element on success, and LINKEDLIST_OUT_OF_BOUNDS_EX if position is outside the bounds of the list.

Remember to cast the result of this function into a pointer to of the element's type before dereferencing!

Deleting an element

To delete an element, call ll_delete(linkedlist *list, unsigned int position), where list is a pointer to the linked list to delete the element from, and position is the position of the element to delete from the list.

This function returns LINKEDLIST_OK on success and LINKEDLIST_OUT_OF_BOUNDS_EX if position is outside of the bounds of the list.

Getting the list's size

To get the size of a list, call ll_size(linkedlist *list), where list is a pointer to the list to get the size of. This function returns the list's size as an unsigned int.

About

Simple C library that implements useful data structures. I'm planning to revisit this project and give it quite the upgrade.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages