From f76f06fd25ed12e85ed8bf3b602f7fc8134bb5d9 Mon Sep 17 00:00:00 2001 From: Nilstrieb Date: Mon, 7 Jun 2021 15:14:09 +0200 Subject: [PATCH] fixed rust bug - used usize instead of u32 --- primes/README.md | 2 +- primes/rust/src/main.rs | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/primes/README.md b/primes/README.md index 74b33f6..69d9679 100644 --- a/primes/README.md +++ b/primes/README.md @@ -11,5 +11,5 @@ and we should never forget that V8 is... **fast**. | ---------| -------| | Java | 1836ms | | Javascript | 1778ms | -| Rust | 1818ms | +| Rust | 577ms | | python3 | 34361ms | \ No newline at end of file diff --git a/primes/rust/src/main.rs b/primes/rust/src/main.rs index f7bbfc3..ee8b917 100644 --- a/primes/rust/src/main.rs +++ b/primes/rust/src/main.rs @@ -3,7 +3,7 @@ use std::time::{SystemTime}; fn main() { let mut times = Vec::new(); - for i in 0..2 { + for i in 0..10 { println!("Starting run {}", i); let start = SystemTime::now(); let _ = primes(10_000_000); @@ -19,14 +19,14 @@ fn main() { } -fn primes(max: usize) -> Vec { - let mut primes_list = Vec::new(); +fn primes(max: u32) -> Vec { + let mut primes_list: Vec = Vec::new(); primes_list.push(2); for i in 3..max { //go through all numbers for prime in &primes_list { //test each number - if *prime > (i as f64).sqrt() as usize { + if *prime > (i as f64).sqrt() as u32 { primes_list.push(i); break; }