### 2 unstable releases

0.4.0 | Mar 31, 2024 |
---|---|

0.3.0 | Mar 29, 2024 |

#**1197** in Algorithms

**46** downloads per month

**MIT**license

8KB

110 lines

# Divisors-fixed

A minimalistic crate for finding all divisors of an integer. Although its worst-case time complexity is (currently) still O(sqrt(n)), It is practically much faster than the naive method of trying every integers under sqrt(n).

This library works with

, `u8`

, `u16`

, `u32`

, `u64`

,
and `u128`

types.`usize`

This originally started as a clone of the divisors crate with bug fixes (hence the name), but has since evolved with API changes and reimplementations.

## Example

`let` n `=` `240``u32``;`
`println!``(``"``{:?}``"``,` n`.``divisors_unordered``(``)``)``;`
`println!``(``"``{:?}``"``,` n`.``divisors``(``)``)``;`
`/*`
Output:
[1, 2, 4, 8, 16, 3, 6, 12, 24, 48, 5, 10, 20, 40, 80, 15, 30, 60, 120, 240]
[1, 2, 3, 4, 5, 6, 8, 10, 12, 15, 16, 20, 24, 30, 40, 48, 60, 80, 120, 240]
`*/`

## Usage

Add this to your

:`Cargo.toml`

`[``dependencies``]`
`divisors ``=` `"`0.4.0`"`

## Documentations

`cargo`` doc`` --`open

## Benchmarks

`cargo`` bench`

## Test

`cargo`` test`

## License

MIT.