Advanced C Programming priority queue This homework will eventually be a part of a future sequence of assignments about data compression using a method called Huffman coding. The first step is to create a module for storing data. While we plan to use it for Huffman coding, this first part can stand on its own; it could be used for storing any kind of data. You will use linked lists to implement a priority queue data structure and a stack data structure. Those are just linked lists with some rules about how elements are added and removed. Learning goals You should learn or practice how to: 1. Create and manipulate linked lists. 2. Avoid memory faults associated with linked lists. 3. Use function addresses to make your data structures work with any type of values.