Mastering Priority Queues: How To Use Custom Comparators In C