Resolve duplicate entries for sieve of eratosthenes (#1770)

* remove intarr test

* Remove main file oops

* FIXES: #1666 , remove references to SieveOfEratosthenesIntArray

* Finally fix the requirements, passes vitest

* Updated Documentation in README.md

* FIXES: #1666 and conform to alg comment standards

---------

Co-authored-by: SpiderMath <SpiderMath@users.noreply.github.com>
This commit is contained in:
Shankha Suvra Dam
2025-01-12 15:57:54 +05:30
committed by GitHub
parent 85a55daf49
commit a62a46e732
6 changed files with 48 additions and 69 deletions

View File

@@ -1,14 +1,29 @@
import { sieveOfEratosthenes } from '../SieveOfEratosthenes'
import { PrimeCheck } from '../PrimeCheck'
describe('should return an array of prime booleans', () => {
it('should have each element in the array as a prime boolean', () => {
const n = 30
const primes = sieveOfEratosthenes(n)
primes.forEach((primeBool, index) => {
if (primeBool) {
expect(PrimeCheck(index)).toBeTruthy()
}
})
describe('sieveOfEratosthenes', () => {
test('returns an empty array for max < 2', () => {
expect(sieveOfEratosthenes(1)).toEqual([])
})
test('returns [2] for max = 2', () => {
expect(sieveOfEratosthenes(2)).toEqual([2])
})
test('returns [2, 3] for max = 3', () => {
expect(sieveOfEratosthenes(3)).toEqual([2, 3])
})
test('returns [2, 3, 5, 7] for max = 10', () => {
expect(sieveOfEratosthenes(10)).toEqual([2, 3, 5, 7])
})
test('returns [2, 3, 5, 7, 11, 13, 17, 19] for max = 20', () => {
expect(sieveOfEratosthenes(20)).toEqual([2, 3, 5, 7, 11, 13, 17, 19])
})
test('returns [2, 3, 5, 7, 11, 13, 17, 19, 23, 29] for max = 30', () => {
expect(sieveOfEratosthenes(30)).toEqual([
2, 3, 5, 7, 11, 13, 17, 19, 23, 29
])
})
})

View File

@@ -1,12 +0,0 @@
import { sieveOfEratosthenes } from '../SieveOfEratosthenesIntArray'
import { PrimeCheck } from '../PrimeCheck'
describe('should return an array of prime numbers', () => {
it('should have each element in the array as a prime numbers', () => {
const n = 100
const primes = sieveOfEratosthenes(n)
primes.forEach((prime) => {
expect(PrimeCheck(prime)).toBeTruthy()
})
})
})