/push_swap

This project involves sorting data on a stack, with a limited set of instructions, and the smallest number of moves. To make this happen, you will have to manipulate various sorting algorithms and choose the most appropriate solution(s) for optimized data sorting.

Primary LanguageC

push_swap

sa : swap a - swap the first 2 elements at the top of stack a. Do nothing if there is only one or no elements).
sb : swap b - swap the first 2 elements at the top of stack b. Do nothing if there is only one or no elements).
ss : sa and sb at the same time.
pa : push a - take the first element at the top of b and put it at the top of a. Do nothing if b is empty.
pb : push b - take the first element at the top of a and put it at the top of b. Do nothing if a is empty.
ra : rotate a - shift up all elements of stack a by 1. The first element becomes the last one.
rb : rotate b - shift up all elements of stack b by 1. The first element becomes the last one.
rr : ra and rb at the same time.
rra : reverse rotate a - shift down all elements of stack a by 1. The last element becomes the first one.
rrb : reverse rotate b - shift down all elements of stack b by 1. The last element becomes the first one.
rrr : rra and rrb at the same time.

quicksort
radix

leaks --atExit -- ./push_swap

algoritms

https://www.youtube.com/watch?v=4s-aG6yGGLU
https://www.youtube.com/watch?v=SLauY6PpjW4&t=110s

https://www.youtube.com/watch?v=xp4DUxGUggU @acami @wdawna
https://www.youtube.com/watch?v=KeDXVukgd9g @lajudy
https://www.youtube.com/watch?v=98r9uhjPveE @einterdi
https://www.youtube.com/watch?v=GA9aKzl86nA @edu_events_mow
https://www.youtube.com/watch?v=7KW59UO55TQ john park

useful links:

https://github.com/o-reo/push_swap_visualizer visualizator
https://m.vk.com/@forum42intra-push-swap
https://github.com/VBrazhnik/Push_swap/wiki/Algorithm
https://medium.com/nerd-for-tech/push-swap-tutorial-fa746e6aba1e

https://www.youtube.com/playlist?list=PL2_aWCzGMAwI3W_JlcBbtYTwiQSsOTa6P еще раз про структуры и листы плейлист

testers:

https://github.com/lmalki-h/push_swap_tester
https://github.com/LeoFu9487/push_swap_tester

visualizer:

https://github.com/o-reo/push_swap_visualizer
https://github.com/elijahkash/push_swap_gui