The push_swap project is a challenging algorithmic exercise focusing on sorting data with a limited set of instructions and optimizing the number of actions. This project aims to develop proficiency in handling complex algorithms and data structures in C.
- Two Stacks Management: Utilizes two stacks,
a
andb
, for sorting. - Sorting Algorithm: Implements an efficient algorithm to sort data in ascending order.
- Instructions Set: Utilizes a specific set of instructions like
sa
,sb
,ss
,pa
,pb
,ra
,rb
,rr
,rra
,rrb
,rrr
. - Error Management: Handles errors effectively, such as invalid inputs or arguments.
- Efficiency: Focuses on reducing the number of operations to sort the stacks.
- Bonus: The "checker" program that validates the sorting process was implemented
- Clone the repository:
- Compile the program:
make
- Run the program:
./push_swap [stack of numbers]
- C programming language
- Algorithmic and data structure concepts