The document discusses algorithms and their complexity. It defines an algorithm as a well-defined computational procedure that takes inputs and produces outputs. Algorithms have properties like definiteness, correctness, finiteness, and effectiveness. While faster computers make any method viable, analyzing algorithms' complexity is still important because computing resources are finite. Algorithm complexity is analyzed asymptotically for large inputs, focusing on growth rates like constant, logarithmic, linear, quadratic, and exponential. Common notations like Big-O describe upper algorithm complexity bounds.
This is a seminar presentation on "SORTING" for Semester 2 exam at St. Xavier's College.The power point presenation deals with the requirement of sorting in our life,types of sorting techniques,code for implementing them,the time and space complexity of different sorting algorithms,the applications of sorting,its use in the industry and its future scope.The slide show contains .gif files which can't be seen here.For more details or any queries send me a mail at agmajumder@gmail.com
this is a briefer overview about the Big O Notation. Big O Notaion are useful to check the Effeciency of an algorithm and to check its limitation at higher value. with big o notation some examples are also shown about its cases and some functions in c++ are also described.
This is a seminar presentation on "SORTING" for Semester 2 exam at St. Xavier's College.The power point presenation deals with the requirement of sorting in our life,types of sorting techniques,code for implementing them,the time and space complexity of different sorting algorithms,the applications of sorting,its use in the industry and its future scope.The slide show contains .gif files which can't be seen here.For more details or any queries send me a mail at agmajumder@gmail.com
this is a briefer overview about the Big O Notation. Big O Notaion are useful to check the Effeciency of an algorithm and to check its limitation at higher value. with big o notation some examples are also shown about its cases and some functions in c++ are also described.
this presentation is made for the students who finds data structures a complex subject
this will help students to grab the various topics of data structures with simple presentation techniques
best regards
BCA group
(pooja,shaifali,richa,trishla,rani,pallavi,shivani)
Discuss seven functions, Analysis of algorithms- Experimental Studies/Primitive operations/Asymptotic notation- Big Oh/Big-Omega/Big-Theta
(Download is recommended to make the animations work)
Similar to Lecture 2 data structures and algorithms (20)
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
Synthetic Fiber Construction in lab .pptxPavel ( NSTU)
Synthetic fiber production is a fascinating and complex field that blends chemistry, engineering, and environmental science. By understanding these aspects, students can gain a comprehensive view of synthetic fiber production, its impact on society and the environment, and the potential for future innovations. Synthetic fibers play a crucial role in modern society, impacting various aspects of daily life, industry, and the environment. ynthetic fibers are integral to modern life, offering a range of benefits from cost-effectiveness and versatility to innovative applications and performance characteristics. While they pose environmental challenges, ongoing research and development aim to create more sustainable and eco-friendly alternatives. Understanding the importance of synthetic fibers helps in appreciating their role in the economy, industry, and daily life, while also emphasizing the need for sustainable practices and innovation.
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
A Strategic Approach: GenAI in EducationPeter Windle
Artificial Intelligence (AI) technologies such as Generative AI, Image Generators and Large Language Models have had a dramatic impact on teaching, learning and assessment over the past 18 months. The most immediate threat AI posed was to Academic Integrity with Higher Education Institutes (HEIs) focusing their efforts on combating the use of GenAI in assessment. Guidelines were developed for staff and students, policies put in place too. Innovative educators have forged paths in the use of Generative AI for teaching, learning and assessments leading to pockets of transformation springing up across HEIs, often with little or no top-down guidance, support or direction.
This Gasta posits a strategic approach to integrating AI into HEIs to prepare staff, students and the curriculum for an evolving world and workplace. We will highlight the advantages of working with these technologies beyond the realm of teaching, learning and assessment by considering prompt engineering skills, industry impact, curriculum changes, and the need for staff upskilling. In contrast, not engaging strategically with Generative AI poses risks, including falling behind peers, missed opportunities and failing to ensure our graduates remain employable. The rapid evolution of AI technologies necessitates a proactive and strategic approach if we are to remain relevant.
2. Informally Definition
An algorithm is any well-defined
computational procedure that
takes some values or set of
values as input and produces
some values or set of values as
output
3. Formal Definition
As a sequence of computational
steps that transforms the input
into output
4. Algorithms
Properties of algorithms:
•
•
•
•
•
•
•
Input from a specified set,
Output from a specified set (solution),
Definiteness of every step in the computation,
Correctness of output for every possible input,
Finiteness of the number of calculation steps,
Effectiveness of each calculation step and
Generality for a class of problems.
4
5. ?
Suppose computers were infinitely fast and
computer memory are free
Is there any reason to study algorithm ?
Yes
– Demonstrate that solution methods
terminates and does so with correct
answer.
6. If computers were infinitely fast,
any correct method for solving a
problem would do.
You would probably want your
implementation to be within the
bounds
of
good
software
engineering practice
7. In reality
Computers may be fast, but they
are not infinitely fast and
Memory may be cheap but it is not
free
Computing time is therefore a
bounded resource and so is the
space in memory
8. Complexity
In general, we are not so much interested
in the time and space complexity for small
inputs.
For example, while the difference in time
complexity between linear and binary
search is meaningless for a sequence with n
= 10, it is gigantic for n = 230.
8
9. Complexity
For example, let us assume two algorithms A and
B that solve the same class of problems.
The time complexity of A is 5,000n, the one for
B is 1.1n for an input with n elements.
For n = 10, A requires 50,000 steps, but B only
3, so B seems to be superior to A.
For n = 1000, however, A requires 5,000,000
steps, while B requires 2.51041 steps.
9
10. Complexity
Comparison: time complexity of algorithms A and B
Input Size
Algorithm A
Algorithm B
n
5,000n
10
50,000
1.1n
3
100
500,000
13,781
1,000
5,000,000
2.51041
1,000,000
5109
4.81041392
10
11. Complexity
This means that algorithm B cannot be used for
large inputs, while algorithm A is still feasible.
So what is important is the growth of the
complexity functions.
The growth of time and space complexity with
increasing input size n is a suitable measure for
the comparison of algorithms.
11
12. Growth Function
The order of growth / rate of growth
of the running time of an algorithm
gives a simple characterization of the
algorithm efficiency and allow us to
compare the relative performance of
alternative algorithm
12
13. Asymptotic Efficiency
Algorithm
When the input size is large enough so
that the rate of growth / order of
growth of the running time is relevant
That is we are concerned with how the
running time of an algorithm
increases with the size of the input in
the limit, as the size of the input
increases without bound
13
15. Asymptotic Notation
The notations we use to describe
the asymptotic running time of an
algorithm are defined in terms of
functions whose domains are the
set of natural numbers N = {0, 1,
2,…. }
15
17. Asymptotic Notation
Let n be a non-negative integer
representing the size of the
input to an algorithm
17
18. Asymptotic Notation
Let f(n) and g(n) be two positive
functions,
representing
the
number of basic calculations
(operations, instructions) that an
algorithm takes (or the number
of memory words an algorithm
needs).
18
20. Q - Notation
For a given function g(n), we denote
by Q(g(n)) the set of functions
Q(g(n)) = {f(n) : there exist positive
constants c1 , c2 , and n0 such
that 0 c1 g(n) f(n) c2 g(n)
for all n n0
f(n) Q(g(n))
f(n) = Q(g(n))
20
21. Q - Notation
g(n) is an
asymptotically tight
bound for f(n).
f(n) and g(n) are
nonnegative, for large
n.
21
22. Example
Q(g(n)) = {f(n) : positive constants c1, c2,
and n0, such that n n0,
0 c1g(n)
f(n) c2g(n) }
1/2n2 - 3n = Q(n2)
Determine the positive constant n0,
c1, and c2 such that
c1 n2 1/2n2 - 3n c2 n2 n n0
22
24. O-Notation
For a given function g(n)
O(g(n)) = {f(n) : there exist
positive constants c and n0 such
that 0 f(n) c g(n) for all n
n0 }
Intuitively: Set of all functions whose rate of
growth is the same as or lower than that of
c. g(n)
24
25. O-Notation
g(n) is an asymptotic upper bound for f(n).
f(n) = Q(g(n)) f(n) = O(g(n)).
Q(g(n)) O(g(n)).
25
26. Example
O(g(n)) = {f(n) : there exist positive
constants c and n0 such that 0 f(n)
c g(n) for all n n0 }
Any linear function an + b is in
O(n2). How?
C = a + |b| and n0 = 1
26
27. Big-O Notation
(Examples)
f(n) = 5n+2 = O(n)
// g(n) = n
–
f(n) 6n, for n 3 (C=6, n0=3)
–
f(n) 0.5 n for n 0 (C=0.5, n0=0)
–
n2-n n2 for n 0 (C=1, n0=0)
–
n(n+1)/2 n2 for n 0 (C=1, n0=0)
f(n)=n/2 –3 = O(n)
n2-n = O(n2) // g(n) = n2
n(n+1)/2 = O(n2)
27
28. W - Notation
For a given function g(n)
W(g(n)) = {f(n) : there exist
positive constants c and n0 such
that 0 c g(n) f(n) for all
n n0}
Intuitively: Set of all functions whose
rate of growth is the same as or higher
than that of g(n).
28
29. W - Notation
g(n) is an asymptotic lower bound for f(n).
f(n) = Q(g(n)) f(n) = W(g(n)).
Q(g(n)) W(g(n)).
29
31. Relations Between Q, O, W
For any two function f(n) and g(n),
we have f(n) = Q(g(n)) if and only
if f(n) = O(g(n)) and f(n) =
W(g(n))
That is
Q(g(n)) = O(g(n)) W(g(n))
31
32. The Growth of Functions
“Popular” functions g(n) are
n log n, 1, 2n, n2, n!, n, n3, log n
Listed from slowest to fastest growth:
• 1
• log n
• n
• n log n
• n2
• n3
• 2n
• n!
32
34. Example: Find sum of array elements
Algorithm arraySum (A, n)
Input array A of n integers
Output Sum of elements of A
sum 0
for i 0 to n 1 do
sum sum + A [i]
return sum
# operations
1
n+1
n
1
Input size: n (number of array elements)
Total number of steps: 2n + 3
35. Example: Find max element of an
array
Algorithm arrayMax(A, n)
Input array A of n integers
Output maximum element of A
currentMax A[0]
for i 1 to n 1 do
if A [i] currentMax then
currentMax A [i]
return currentMax
# operations
1
n
n -1
n -1
1
Input size: n (number of array elements)
Total number of steps: 3n