{"id":18123151,"url":"https://github.com/gemartin99/push_swap","last_synced_at":"2026-03-03T16:43:51.455Z","repository":{"id":152853211,"uuid":"512165875","full_name":"gemartin99/Push_swap","owner":"gemartin99","description":"Sorting algorithm using two stacks","archived":false,"fork":false,"pushed_at":"2024-10-27T21:46:31.000Z","size":4556,"stargazers_count":28,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T11:04:52.432Z","etag":null,"topics":["42born2code","42cursus","42projects","42pushswap","42school","algorithm","educational-project","sorting-algorithms"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gemartin99.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-07-09T11:15:00.000Z","updated_at":"2025-03-09T14:17:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"10ff592e-37fe-4aae-8b64-7a72ff6f6d24","html_url":"https://github.com/gemartin99/Push_swap","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemartin99%2FPush_swap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemartin99%2FPush_swap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemartin99%2FPush_swap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gemartin99%2FPush_swap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gemartin99","download_url":"https://codeload.github.com/gemartin99/Push_swap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248975316,"owners_count":21192208,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["42born2code","42cursus","42projects","42pushswap","42school","algorithm","educational-project","sorting-algorithms"],"created_at":"2024-11-01T07:08:17.912Z","updated_at":"2026-03-03T16:43:46.432Z","avatar_url":"https://github.com/gemartin99.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Sobre push_swap 🔢\n\nPush_swap es un proyecto de algoritmia simple, tienes que ordenar\ndatos. Tienes a tu disposición un conjunto de valores int, dos stacks y un conjunto de\ninstrucciones para manipular ambos. Deberás utilizar el minimo de instrucciones posible.\n\n\n\n## Operaciones 🔁\n\n| Operaciones | Explicación |\n| :--- | :--- |\n| sa | swap a - intercambia los dos primeros elementos encima del stack a. |\n| sb | swap b - intercambia los dos primeros elementos encima del stack b. |\n| ss | swap a y swap b a la vez. |\n| pa | push a -  toma el primer elemento del stack b y lo pone encima del stack a. |\n| pb | push b -  toma el primer elemento del stack a y lo pone encima del stack b. |\n| ra | rotate a - desplaza hacia arriba todos los elementos del stack a una posición, el primer elemento se convierte en el último. |\n| rb | rotate b - desplaza hacia arriba todos los elementos del stack b una posición, el primer elemento se convierte en el último. |\n| rr | ra y rb a la vez. |\n| rra | reverse rotate a - desplaza hacia abajo todos los elementos del stack a una posición, el último elemento se convierte en el primero. |\n| rrb | reverse rotate b - desplaza hacia abajo todos los elementos del stack b una posición, el último elemento se convierte en el primero. |\n| rrr | rra y rrb a la vez. |\n\n## Calificación 💯\n\n⚠️ Necesitaras un mínimo de 84/100 para aprobar este proyecto ⚠️\n\n### 🔹 3 Numeros\n\nMax 3 operaciones.\n\n### 🔹 5 Numeros\n\nMax 12 operaciones. \n\n![](https://github.com/gemartin99/Push_swap/blob/master/push_swap5.gif)\n\n### 🔹 100 Numeros:\n\n| Operaciones | Puntos |\n| :---: | :---: |\n| Menos de 700 | 5 |\n| Menos de 900 | 4 |\n| Menos de 1100 | 3 |\n| Menos de 1300 | 2 |\n| Menos de 1500 | 1 |\n\n![](https://github.com/gemartin99/Push_swap/blob/master/push_swap100.gif)\n\n### 🔹 500 Numeros: \n\n| Operaciones | Puntos |\n| :---: | :---: |\n| Menos de 5500 | 5 |\n| Menos de 7000 | 4 |\n| Menos de 8500 | 3 |\n| Menos de 10000 | 2 |\n| Menos de 11500 | 1 |\n\n## BONUS ⭐️\n\nSolo se debe hacer el bonus si la parte obligatoria esta al 100%. El bonus consiste en el desarrollo de un programa llamado checker , que verificará\nsi tu stack A esta ordenado. Para ello deberás mandarle como argumentos los numeros del stack y una vez se ejecute el programa debes mandarle las operaciones que quieres realizar para ordenarlo. Cuando queramos dejar de mandarle operaciones haremos ```Ctrl + D``` y el checker nos dirá \"OK\" si esta ordenado o \"KO\" si no lo esta. La controlación de errores del checker debe ser la misma que en push_swap. \n\n![](https://github.com/gemartin99/Push_swap/blob/master/checker.gif)\n\n# TESTER ✅🆗\n\nComprueba que todo este correcto antes de validar el proyecto! \n\n➡️ [TESTER PROPIO](https://github.com/gemartin99/Push_swap_tester) ⬅️\n\n# Autor ✍🏼\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/gemartin99/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/66915274?v=4\" width=\"100px;\" alt=\"100px\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003egemartin\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://profile.intra.42.fr/users/gemartin\" title=\"Intra 42\"\u003e\u003cimg src=\"https://img.shields.io/badge/Barcelona-FFFFFF?style=plastic\u0026logo=42\u0026logoColor=000000\" alt=\"Intra 42\"/\u003e\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n# Quizás pueda interesarte!\n\n### - Para ver mi progresion en el common core 42 ↙️\n\n[AQUÍ](https://github.com/gemartin99/42cursus)\n\n### - Mi perfil en la intranet de 42 ↙️\n[AQUÍ](https://profile.intra.42.fr/users/gemartin)\n\n### - Contacto 📥\n\n◦ Email: gemartin@student.42barcelona.com\n\n◦ Linkedin: https://www.linkedin.com/in/gemartin99/\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemartin99%2Fpush_swap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgemartin99%2Fpush_swap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgemartin99%2Fpush_swap/lists"}