Skip to content

Releases: biralavor/42_pushswap

v1.7 push_swap sorting all numbers (best version)

05 Jul 16:22
b825aed
Compare
Choose a tag to compare

V1.7 Push Swap

Now working, with movements:

  • If 4 numbers
    • 7 maximum movements
    • 3 minimum movements
  • If 5 numbers
    • 9 maximum movements
    • 6 minimum movements
  • If 10 numbers
    • 32 maximum movements
    • 21 minimum movements
  • If 15 numbers
    • 61 maximum movements
    • 45 minimum movements
  • If 100 numbers
    • 639 maximum movements
    • 574 minimum movements
  • If 500 numbers
    • 4950 maximum movements
    • 4525 minimum movements

Bugs just fixed:

  • Now the program accepts a large negative numbers list #18
  • Now the program blocks if the is a non number at the list #20
  • Now the program blocks unexpected signs (-) and (--)

Project in TDD (Test Driven Development)

  • 66 automated tests with 191 assertions, without monolith file #24

Screenshot from 2024-06-26 14-50-12
Screenshot from 2024-07-05 13-15-13

What's Changed

Full Changelog: v1.61...v1.7

v1.61 push_swap sorting all numbers but not optmized

01 Jul 14:22
Compare
Choose a tag to compare

V1.61 Push Swap

Now working to sort a list with:

  • from 2 until 7 numbers, in a optimized method
  • more than 7 numbers, without the best sorting method

Screenshot from 2024-06-26 14-40-35

Bugs just fixed:

  • Now the program accepts a large negative numbers list #18
  • Now the program blocks if the is a non number at the list #20
  • Now the program blocks unexpected signs (-) and (--)

Project in TDD (Test Driven Development)

  • 56 automated tests with 166 assertions

Still TODO:

  • optimize the sorting method

Screenshot from 2024-06-26 14-50-12

What's Changed

Full Changelog: v1.5...v1.61

v1.5 push_swap working with a list until 7 numbers

28 Jun 15:42
6be5c35
Compare
Choose a tag to compare

V1.5 Push Swap

Now working to sort a list with:

  • from 2 until 7 numbers

Screenshot from 2024-06-26 14-40-35

Bugs just fixed:

  • Now the program accepts a negative number at the end of the list #13

Project in TDD (Test Driven Development)

  • 48 automated tests with 150 assertions

Still TODO:

  • make test for a list with 8 or more numbers
  • make test for double or more signs (-- +++)

Screenshot from 2024-06-26 14-50-12

What's Changed

Full Changelog: v1.4...v1.5

v1.4 push_swap working with a list until 7 numbers

27 Jun 20:30
588f9a8
Compare
Choose a tag to compare

V1.4 Push Swap

Now working to sort a list with:

  • from 2 until 7 numbers

Screenshot from 2024-06-26 14-40-35

Bugs just fixed:

  • Now the program exits if the given number is outside the range of int_min and int_max

Project in TDD (Test Driven Development)

  • 48 automated tests with 150 assertions

Still TODO:

  • make test for a list with 8 or more numbers
  • make test for negative numbers, at the end #12
  • make test for double or more signs (-- +++)

Screenshot from 2024-06-26 14-50-12

What's Changed

Full Changelog: v1.3...v1.4

v1.3 push_swap working with a list until 7 numbers

26 Jun 17:44
a1be660
Compare
Choose a tag to compare

V1.3 Push Swap

Now working to sort a list with:

  • from 2 until 7 numbers

Screenshot from 2024-06-26 14-40-35

Bugs just fixed:

  • New movement functions, which uses the cheapest cost of a given stack

Project in TDD (Test Driven Development)

  • 40 automated tests with 134 assertions

Still TODO:

  • make test for a list with 8 or more numbers
  • make test for negative numbers
  • make test for double or more signs (-- +++)
  • outside int_max range
  • outside int_min range

Screenshot from 2024-06-26 14-50-12

What's Changed

Full Changelog: v1.2...v1.3

v1.2 push_swap working with 4 numbers

19 Jun 18:28
b4c330d
Compare
Choose a tag to compare

V1.2 Push Swap

Now working to sort a list with:

  • 2 numbers
  • 3 numbers
  • 4 numbers

Bugs just fixed:

  • New method for swap, rotate, push functions

Project in TDD (Test Driven Development)

  • 39 automated tests with 129 assertions

Still TODO:

  • make test for a list with 5 or more numbers
  • make test for negative numbers
  • make test for double or more signs (-- +++)

v1.1 push_swap working with 3 numbers, with bugfix

08 Jun 18:09
Compare
Choose a tag to compare

V1.1 Push Swap

Now working to sort a list with:

  • 2 numbers
  • 3 numbers

Bugs just fixed:

  • The program was unable to add more variables at struct. Now, fixed with a new linked list reader.

Project in TDD (Test Driven Development)

  • 27 automated tests with 76 assertions

Screenshot from 2024-06-07 15-23-41

Still TODO:

  • make test for a list with four or more numbers
  • make test for signs (- +)
  • make test for non-numbers input

v1.0 push_swap working with 3 numbers

07 Jun 18:36
Compare
Choose a tag to compare

V1.0 Push Swap

Now working to sort a list with:

  • 2 numbers
  • 3 numbers

Project in TDD (Test Driven Development)

  • 27 automated tests with 76 assertions

Screenshot from 2024-06-07 15-23-41

Still TODO:

  • make test for a list with four or more numbers
  • make test for signs (- +)
  • make test for non-numbers input

v0.7 Push_Swap running smoothly with 3 numbers

07 Jun 13:51
Compare
Choose a tag to compare

What's Changed

  • Bugfix/double pointers by @biralavor in #6
  • Improving sort method if list has 3 numbers, with a maximum cost of 2 moviments \o/

Screenshot from 2024-06-07 10-49-48

Full Changelog: v0.6...v0.7

v0.6 Almost ready for sorting algorithm implementation

04 Jun 14:02
Compare
Choose a tag to compare

Still TODO:

  • make test for signs (- +)
  • make test for non-numbers input
  • make test for empty list
  • make test for a list with '0'
  • make test to swap a list with two and three numbers
  • make test to swap a list with four and five numbers

Adding more tests at MU_TEST_SUITE:

Screenshot from 2024-06-04 10-55-20
Screenshot from 2024-06-04 10-54-00

Most difficult test to build, until now: test_buildstack_argv

How to simulate argvs from user? How to translate this data?
Besides everything is a number on a computer, the terminal treats user's input as strings, even it looks like a number ;)
So, how about calling the split() to cut user input at every space?
Screenshot from 2024-06-04 11-00-00

Updating Makefile to simulate user numbers input for ./push_swap <numbers>

Screenshot from 2024-06-04 10-52-30

Full Changelog: v0.5...v0.6