remove Primes::pop
This commit is contained in:
+1
-21
@@ -46,7 +46,7 @@ where
|
|||||||
set.insert(prime);
|
set.insert(prime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
vector.reverse(); // so that self.pop removes the smallest prime
|
|
||||||
debug_assert_eq!(number_of_primes, vector.len());
|
debug_assert_eq!(number_of_primes, vector.len());
|
||||||
Primes { vector, set }
|
Primes { vector, set }
|
||||||
}
|
}
|
||||||
@@ -97,14 +97,6 @@ where
|
|||||||
self.vector.is_empty()
|
self.vector.is_empty()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn pop(&mut self) -> Option<T> {
|
|
||||||
let result = self.vector.pop();
|
|
||||||
if let Some(value) = result {
|
|
||||||
self.set.remove(&value);
|
|
||||||
}
|
|
||||||
result
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn contains(&self, val: &T) -> bool {
|
pub fn contains(&self, val: &T) -> bool {
|
||||||
self.set.contains(val)
|
self.set.contains(val)
|
||||||
}
|
}
|
||||||
@@ -137,18 +129,6 @@ mod test {
|
|||||||
assert!(!primes.contains(&7));
|
assert!(!primes.contains(&7));
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn test_pop() {
|
|
||||||
let mut primes = Primes::get_between(10, 20);
|
|
||||||
assert_eq!(primes.len(), 4);
|
|
||||||
assert!(primes.contains(&19));
|
|
||||||
|
|
||||||
primes.pop();
|
|
||||||
|
|
||||||
assert_eq!(primes.len(), 3);
|
|
||||||
assert!(!primes.contains(&11));
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_example_2() {
|
fn test_example_2() {
|
||||||
let primes = Primes::get_between(2, 100_000);
|
let primes = Primes::get_between(2, 100_000);
|
||||||
|
|||||||
Reference in New Issue
Block a user