0% found this document useful (0 votes)
8 views

Chapter 3-The Fundamentals - Algorithms - Integers

Hhjhj

Uploaded by

thinhnc.ce191134
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Chapter 3-The Fundamentals - Algorithms - Integers

Hhjhj

Uploaded by

thinhnc.ce191134
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 56

ĐẠI HỌC FPT CẦN THƠ

Chapter 3

The Fundamentals:
Algorithms and the Integers

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Objectives
l Algorithms
l The Growth of Functions
l Complexity of Algorithms
l The Integers and Division
l Primes and Greatest Common Divisors
l Integers and Algorithms

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.1- Algorithms
An algorithm is a finite set of precise instructions
for performing a computation or for solving a
problem.
Specifying an algorithm: natural language/ pseudocode

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Properties of an algorithm
l Input: An alg. has input values from a specified set
l Output: From each set of IV an alg. produces OV from a
specified set. The OV are the solution to the problem
l Definiteness: The steps of an alg. must be defined precisely
l Correctness: produce the correct OV for each set of IV
l Finiteness: produce the desired OV after a finite number of
steps for any IV in the set.
l Effectiveness: perform each step of an alg. exactly and in a
finite amount of time.
l Generality: be applicable for all problems of the desired form,
not just for a particular set of input values.

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithm – It is a well-defined, systematic logical approach


that comes with a step-by-step procedure for computers to
solve any given program.

Program – It refers to the code (written by programmers) for


any program that follows the basic rules of the concerned
programming language.

Pseudocode – A pseudocode is basically a simplified


version of the programming codes. These codes exist in the
plain English language, and it makes use of various short
phrases for writing a program code before implementing it in
any programming language.

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Finding the Maximum


Element in a Finite Sequence
Procedure max (a1,a2,a3,…,an: integers)
max:=a1
for i:=2 to n
if max < ai then max:= ai
{max is the largest element}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

The Linear Search

Procedure linear search (x: integer, a1,a2,…,an :distinct


integers)
i:=1
while (i ≤ n and x ¹ ai )
i:=i+1
if i ≤ n then location:= i
else location:=0
{location is the subscript of the term that equals x, or is 0 if
x is n ot found}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

The Binary Search


procedure binary search ( x:integer, a1,a2,…,an : increasing
integers)
i:=1 { i is left endpoint of search interval}
j:=n { j is right endpoint of search interval}
while i<j
begin
m:= ë(i+j)/2û
if x>am then i:=m+1
else j:= m
end
if x=ai then location := i
else location:= 0
{location is the subscript of the term that equals x, or is 0 if x is not
found}
GV. Nguyễn Quốc Thanh Discrete Mathematics
ĐẠI HỌC FPT CẦN THƠ

Sorting
l Putting elements into a list in which the elements are in
increasing order.
l There are some sorting algorithms
l Bubble sort
l Insertion sort
l Selection sort (exercise p. 178)
l Binary insertion sort (exercise p. 179)
l Shaker sort (exercise p.259)
l Merge sort and quick sort (section 4.4)
l Tournament sort (10.2)

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Bubble Sort

procedure buble sort (a1,a2,…,an :real numbers with n ≥ 2)


for i:= 1 to n-1
for j:=1 to n- i
if aj > aj+1 then interchange aj and aj+1
{a1,a2,…,an are sorted}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Insertion Sort
procedure insertion sort (a1,a2,…,an :real numbers with n ≥ 2)
for j:= 2 to n { j: position of the examined element }
begin
{ finding out the right position of aj }
i:=1 a: 1 2 3 6 7 8 5 9 12 11
while aj > ai i:= i+1 j= 7
m:=aj { save aj } i=4
{ moving j-i elements backward } m=5
for k:=0 to j-i-1 aj-k:=aj-k-1 a: 1 2 3 6 7 8 5 9 12 11
{move aj to the position i} a: 1 2 3 6 7 5 8 9 12 11
ai:= m a: 1 2 3 5 6 7 8 9 12 11
end
{a1,a2,…,an are sorted} It is usually not the most efficient

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greedy Algorithm
l They are usually used to solve optimization problems: Finding out a
solution to the given problem that either minimizes or maximizes the
value of some parameter.
l Selecting the best choice at each step, instead of considering all
sequences of steps that may lead to an optimal solution.
l Some problems:
– Finding a route between two cities with smallest total mileage
(number of miles that a person passed).
– Determining a way to encode messages using the fewest bits
possible.
– Finding a set of fiber links between network nodes using the least
amount of fiber.

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.2- The Growth of Functions

l The complexity of an algorithm that acts on a


sequence depends on the number of elements
of sequence.
l The growth of a function is an approach that
help selecting the right algorithm to solve a
problem among some of them.
l Big-O notation is a mathematical representation
of the growth of a function.

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.2.1-Big-O Notation
Definition:
Let f and g be functions from the set of
integers or the set of real numbers to the
set of real numbers. We say that f(x) is
O(g(x)) if there are constants C and k such
that |f(x)| ≤ C|g(x)| whenever x>k
Example: Show that f(x)=x2 + 2x +1 is O(x2)
l Examine with x>1 è x2 >x
l è f(x)=x2 + 2x +1 < x2 + 2x2 + x2
l è f(x) < 4x2
l è Let g(x)= x2
l è C=4, k=1, |f(x)| ≤ C|g(x)|
l èf(x) is O(x2)

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Big-O: Theorem 1
Let f(x)=anxn + an-1xn-1+…+a1x+a0, where
a0,a1,…,an are real number, then f(x) is O(xn)
If x>1
|f(x)| =| anxn + an-1xn-1+…+a1x+a0|
≤ | anxn |+|an-1xn-1|+…+|a1x|+|a0| { triangle inequality }
≤ xn (| an |+|an-1xn-1/xn|+…+|a1x/xn|+|a0/xn|)
≤ xn (| an |+|an-1/x|+…+|a1/xn-1|+|a0/xn|)
≤ xn (| an |+|an-1|+…+|a1|+|a0|)
Let C= | an |+|an-1|+…+|a1|+|a0|
|f(x)| ≤ Cxn
è f(x) = O (xn)

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

The Growth of
Combinations
of Functions

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Big-O : Theorems
Theorem 2:
f1(x)=O(g1(x)) ^ f2(x)=O(g2(x))
→ (f1+f2)(x) = O(max(|g1(x)|,|g2(x)|))
Theorem 3:
f1(x)=O(g1(x)) ^ f2(x)=O(g2(x))
→ (f1f2)(x) = O(g1g2(x)))

Corollary 1:
f1(x)=O(g (x)) ^ f2(x)=O(g (x)) → (f1+f2)(x) = O(g(x))

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.2.2- Big-Omega and Big-Theta Notation

l Big-O does not provide the lower bound for the


size of f(x)
l Big-Ω, Big- θ were introduced by Donald Knuth
in the 1970s
l Big-Ω provides the lower bound for the size of
f(x)
l Big- θ provides the upper bound and lower
bound on the size of f(x)

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Big-Omega and Big-Theta Notation


l

Show that f(n)=1+2+…+n is θ(n2)


Examining x>0
f(n)=1+2+…+n = n(n+1)/2 = (n2 +n) /2
n2 /2 ≤ f(n) ≤ (2n2)/2
n2 /2 ≤ f(x) ≤ n2
èLet c1=1/2, c2=1, g(n)= n2
è c1g(n) ≤ f(n) ≤ c2g(n)
è f(n) = θ (n2) with x>0
GV. Nguyễn Quốc Thanh Discrete Mathematics
ĐẠI HỌC FPT CẦN THƠ

Big-Omega and Big-Theta Notation


l Theorem 4
Let f(x)=anxn + an-1xn-1+…+a1x+a0, where a0,a1,…,an are
real number, then f(x) is of order xn

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.3- Complexity of Algorithms

l Computational complexity = Time


complexity + space complexity.
l Time complexity can be expressed in
terms of the number of operations used by
the algorithm.
– Average-case complexity
– Worst-case complexity
l Space complexity will not be considered.

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Demo 1
Describe the time complexity of the algorithm for finding the
largest element in a set:
Procedure max ( a1,a2,…,an : integers)
max:= a1 i Number of
comparisons
for i:=2 to n
2 2
If max < ai then max:= ai 3 2 2(n-1) +1 = 2n-1
… 2 comparisions
Time Complexity is θ(n) n 2
n+1 1, max< ai is omitted

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Demo 2
Describe the average-case time complexity of the linear-search
algorithm :
Procedure linear search (x: integer, a1,a2,…,an :distinct integers)
i:=1
i Number of comparisons done
while (i ≤ n and x ¹ ai) i:=i+1
if i ≤ n then location:= i 1 2
else location:=0 2 4

Avg-Complexity= [(3+5+7+…+(2n+1) ]/n n 2n
= [2(1+2+3+…+n) +n]/n n+1 1, x ¹ ai is omitted
= [2n(n+1)/2]/n + 1
=[n(n+1)]/n + 1
See demonstrations about the worst-
= n+1 + 1 = n+2
case complexity: Examples 5,6 pages
= θ(n) 195, 196

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Understanding the Complexity of Algorithms

Complexity Terminology Problem class


Θ(1) Constant complexity Tractable (dễ), class P
Θ(log n) Logarithmic complexity Class P
Θ(n) Linear complexity Class P
Θ(n logn) n log n complexity Class P
Θ(nb) , b 1, Polynominal complexity Intractable, class NP
integer
Θ(bn), b>1 Exponential complexity
Θ(n!) Factorial complexity
NP : Non-deterministic Polynomial time

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.4- The Integers and Division


l

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

The Division Algorithm


Theorem 2: Let a be an integer and d a positive integer. Then there are
unique integers q and r, with 0 ≤ r<d, such that a=dq+r
d: divisor , r : remainder, q: quotient (thương số)
Note: r can not be negative
Definition: a=dq+r
a: dividend d: divisor
q: quotient r : remainder,
q= a div d r = a mod d
Example:
101 is divided by 11 :101 = 11.9 + 2 è q=9, r=2
-11 is divided by 3 : 3(-4)+ 1 è q=-4, r=1
No OK : -11 is divided by 3: 3(-3)-2 è q=-3, r = -2

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Modular Arithmetic
l

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Modular Arithmetic
Theorem 3
a,b: integers, m: positive integer
a ≡ b (mod m) ↔ (a mod m) = (b mod m)

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Modular Arithmetic…
Theorem 4
a,b: integers, m: positive integer
a and b are congruent modulo m if and only if there is
an integer k such that a = b + km

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Modular Arithmetic…
l

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Applications of Congruences
Hashing Function: H(k) = k mod m
Using in assigning memory locations to computer files.
k: data searched, m : memory block
Examples:
H(064212848) mod 111= 14
H(037149212) mod 111= 65
Collision: H(k1) = H(k2). For example, H(107405723) = 14

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Applications of Congruences
Pseudo-random Numbers xn+1=(axn+c) mod m
a: multiplier, c: increment, x0: seed
with 2 ≤ a<m, 0 ≤ c<m, 0 ≤ x0<m
Examples:
m=9 è random numbers: 0..8
a= 7, c=4, x0=3
Result: Page 207

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Applications of Congruences
Cryptography: letter 1 → letter 2
Examples: shift cipher with k f(p) =(p+k) mod 26
à f-1(p)=(p-k) mod 26

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Applications of Congruences
What is the secret message produced from the message
“MEET YOU IN THE PARK” using
the Caesar cipher (k=3)?
MEET Y O U I N T HE P A R K
12 4 4 19 24 14 20 8 13 19 7 4 15 0 17 10
Sender: (encoding)
Using f(p) = (p+3) mod 26 // 26 characters
15 7 7 22 1 17 23 11 16 22 10 7 18 3 20 13.
PHHW BR X L Q W K H SD U N
Receiver: (decoding) Using f-1(p) = (p-3) mod 26
15 7 7 22 1 17 23 11 16 22 10 7 18 3 20 13
12 4 4 19 24 14 20 8 13 19 7 4 15 0 17 10
GV. Nguyễn Quốc Thanh Discrete Mathematics
ĐẠI HỌC FPT CẦN THƠ

Decrypt the ciphertext message “LEWLYPLUJL


PZ H NYLHA ALHJOLY”
that was encrypted with the shift cipher with shift k
=7

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.5- Primes and Greatest Common


Divisors
Definition 1:
A positive integer p greater than 1 is called prime if the only
positive factors are 1 and p
A positive integer that is greater than 1 and is not prime is
called composite
Examples:
Primes: 2 3 5 7 11
Composites: 4 6 8 9
Finding very large primes: tests for supercomputers

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Primes…
Theorem 1- The fundamental theorem of
arithmetic:
Every positive integer greater than 1 can be written
uniquely as a prime or as the product of two or more
primes where the prime factors are written in order of
nondecreasing size
Examples:
Primes: 37
Composite: 100 = 2.2.5.5 = 2252
999 = 3.3.3.37 = 3337

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Primes…
Converting a number to prime factors
Examples: 7007
Try it to 2,3,5 : 7007 can not divided by 2,3,5
7007 : 7
1001 : 7
143: 11
13: 13
0
è 7007 = 72.11.13

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Primes…
Theorem 2: If n is a composite, then n has a
prime divisor less than or equal to √ ̅n
Proof:
n is a composite è n = ab in which a or b is a prime
If (a> √ ̅n ^ b> √ ̅n) à ab>n è false
è Prime divisor of n less than or equal to √ ̅n

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Primes…
Theorem 3: There are infinite many primes
Proof: page 212
Theorem 4: The prime number theorem:
The ratio of the number of primes not exceeding x and
x/ln x approaches 1 and grows without bound (i.e. the
number of primes not exceeding x can be
approximated by x/ln x).
Example:
x= 101000 à The odds that an integer near 101000 is prime are
approximately 1/ln 101000 ~ 1/2300

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greatest Common Divisors and


Least Common Multiples
Definition 2:
Let a, b be integers, not both zero. The largest
integer d such that d|a and d|b is called the
greatest common divisor of a and b.
Notation: gcd(a,b)
Example: gcd(24,36)=?
Divisors of 24: 2 3 4 6 8 12 = 2331
Divisors of 36: 2 3 4 6 9 12 18 = 2232
gcd(24,36)=12 = 2231 // Get factors having minimum power

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greatest Common Divisors and


Least Common Multiples
Definition 3:
The integers a, b are relatively prime if their
greatest common divisor is 1

Example:
gcd(3,7)=1 è 3,7 are relatively prime
gcd (17,22)=1 è 17,22 are relatively prime
gcd(17,34) = 17 è 17, 34 are not relatively prime

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greatest Common Divisors and


Least Common Multiples
Definition 4:
The integers a1,a2,a3,…,an are pairwise relatively
prime if gcd(ai,aj)=1 whenever 1 ≤ i<j ≤ n
Example:
7 10 11 17 23 are pairwise relatively prime
7 10 11 16 24 are not pairwise relatively prime

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greatest Common Divisors and


Least Common Multiples
Definition 5:
The Least common multiple of the positive integer a
and b is the smallest integer that is divisible by both
a and b
Notation: lcm(a,b)
Example:
lcm(12,36) = 36 lcm(7,11) = 77
lcm (233572, 2433) = 243572
233572, 243370 è 243572 // get maximum power

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Greatest Common Divisors and


Least Common Multiples
Theorem 5:
Let a, b be positive integers then
ab= gcd(a,b). lcm(a,b)
Example: gcd(8, 12) = 4 lcm(8,12)=24 è 8.12 = 4.24

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

3.6- Integers and Algorithms


l Representations of Integers
l Algorithms for Integer Operations
l Modular Exponentiation
l Euclid Algorithm

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Representations of Integers
l

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithm 1: Constructing Base b Expansions

Procedure base b expansion ( n: positive integer)


q:=n
k:=0
while q ¹ 0
begin
ak :=q mod b
q := ëq/bû
k := k +1
end { The base b expansion of n is (ak-1ak-2…a1a0)}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithms for Integer Operations


Algorithm 2: Addition integers in binary format
Algorithm 3: Multiplying integers in binary format
Algorithm 4: Computing div and mod integers
Algorithm 5: Modular Exponentiation

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithm 2: Adding of Integers


Complexity: O (n) procedure add ( a,b: integers)
{ a: (an-1an-2…a1a0)2 b: (bn-1bn-2…b1b0)2 }
c:=0
for j:=0 to n-1
Begin
1 1 1 0 0 d:= ë(aj+bj+c)/2û // next carry of next step
1 1 1 0 (a) sj= aj+bj+c - 2d // result bit
+ 1 0 1 1 (b) c:=d // updating new carry to next step
1 1 0 0 1 (s) End
sn= c // rightmost bit of result
{ The binary of expansion of the sum is (snsn-1…s1s0)}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithm 3: Multiplying Integers


Complexity: O (n2)
procedure multiply ( a,b: integer)
1 1 0 (a) { a: (an-1an-2…a1a0)2 b: (bn-1bn-2…b1b0)2 }
X 1 0 1 (b) for j:= 0 to n-1 Complexity: O (n)
1 1 0 begin
+ 0 0 0 0 if bj =1 then cj := a shifted j places
1 1 0 0 0 end
1 1 1 1 0 (p) { c0, c1, …, cn-1 are the partial products }
p := 0
for j:= 0 to n-1
p:=p+cj
{p is the value of ab}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Algorithm 4: Computing div and mod


procedure division ( a: integer; d: positive integer)
q:=0
r:= |a|
while r ≥ d {quotient= number of times of successive subtractions}
begin
r:= r-d
q := q+1
end
If a<0 and r>0 then {updating remainder when a<0}
begin
r:= d-r
q := -(q+1)
end
{ q = a div d is the quotient, r=a mod d is the remainder}
GV. Nguyễn Quốc Thanh Discrete Mathematics
ĐẠI HỌC FPT CẦN THƠ

Algorithm 5: Modular Exponentiation


{ bn mod m = ? . Ex: 3644 mod 645 = 36 }
procedure mod_ex ( b: integer, n=(ak-1ak-2…a1a0)2, m: positive integer)
x:=1
power := b mod m
for i:=0 to k-1
begin
if ai=1 then x:= (x.power) mod m
power := (power.power) mod m
end
{ x equals bn mod m }

Corollary 2: ab mod m = ((a mod m)(b mod m)) mod m


bn mod m = result of successive factori mod m

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

The Euclidean Algorithm


Lemma: Proof: page 228
Let a= bq+r, where a, b, q, r are integers. Then gcd(a,b) = gcd(b,r)
Example: 287 = 91.3 + 14 ègcd(287,91) =gcd(91,14)= 7

procedure gcd(a,b: positive integer)


x:=a
y:=b
while y ¹ 0
begin
r := x mod y
x:=y
y:= r
end {gcd(a,b) is x}

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Summary
l Algorithms
l The Growth of Functions
l Complexity of Algorithms
l The Integers and Division
l Primes and Greatest Common Divisors
l Integers and Algorithms

GV. Nguyễn Quốc Thanh Discrete Mathematics


ĐẠI HỌC FPT CẦN THƠ

Thanks

GV. Nguyễn Quốc Thanh Discrete Mathematics

You might also like