Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/raveriss/push_swap
Sorting data on a stack with a limited set of instructions, aiming for maximum efficiency."
https://github.com/raveriss/push_swap
42school algorithm data-sorting
Last synced: 3 days ago
JSON representation
Sorting data on a stack with a limited set of instructions, aiming for maximum efficiency."
- Host: GitHub
- URL: https://github.com/raveriss/push_swap
- Owner: raveriss
- Created: 2024-03-19T00:21:39.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-03-19T00:45:59.000Z (8 months ago)
- Last Synced: 2024-03-19T01:37:08.267Z (8 months ago)
- Topics: 42school, algorithm, data-sorting
- Language: C
- Homepage:
- Size: 28.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projet push_swap
## Description
Ce projet a pour but de trier des données sur une pile, en utilisant un ensemble limité d'instructions, et ce, avec le moins d'actions possible. Il s'agit d'appliquer divers types d'algorithmes pour choisir la solution la plus appropriée et optimisée pour un tri de données efficace.
## Tableau des Composants du Projet
| Fichier | Description | Responsabilité | Statut |
|--------------------|---------------------------------------------------------------------------|--------------------------------------------------------|----------|
| `main.c` | Fichier principal, initialise le programme | Initialisation, gestion des arguments | Complet |
| `stack_operations.c`| Gère les opérations sur les piles (push, swap, rotate) | Manipulation des piles | Complet |
| `sorting_logic.c` | Implémente la logique de tri | Tri des nombres | Complet |
| `utils.c` | Fonctions utilitaires pour le traitement des données et des erreurs | Assistance générale | Complet |
| `validator.c` | Valide les entrées et les états des piles | Validation des entrées, vérification de l'état du tri | Complet |
| `Makefile` | Fichier pour compiler le projet | Compilation | Complet |
| `push_swap.h` | Fichier d'en-tête contenant les déclarations et les macros | Déclarations | Complet |## Installation et Compilation
```bash
git clone [email protected]:raveriss/push_swap.git
cd push_swap
make
```## Utilisation
```
./push_swap [liste_de_nombres]
```## Caractéristiques
Manipulation efficace des piles pour le tri de données.
Utilisation minimale d'instructions pour un tri optimisé.
Gestion d'erreurs et validation des entrées pour une robustesse maximale.
Aucune fuite de mémoire, conformément aux standards de l'école 42.## Fonctions externes autorisées
- malloc
- free
- read
- write
- exit## Precausion contre
- 17014118346046923169479381556846500249895215313
- 00000000000000000000000000000000000000000000003
- +150