Algorithms 1
Upcoming SlideShare
Loading in...5
×
 

Algorithms 1

on

  • 404 views

 

Statistics

Views

Total Views
404
Views on SlideShare
404
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Algorithms 1 Algorithms 1 Presentation Transcript

  • PRESENTED TO :-• Madam Huma 1
  • Presented By:- Muhammad Uzair Rasheed 2009-CPE-03 UCE&T BZU MULTAN 2
  • The Objective of Today’s PresentationTo become familiar with the concept ofalgorithms: – What they are? – What is their use? – What do they consist of? – What are the techniques used for representing them? – How do we can analyze them? 3 View slide
  • al.go.rithm stepssequence Sequence of stepsthat can be taken to solve a given problem 4 View slide
  • Solving Problems (1)When faced with a problem: 1. We first clearly define the problem 2. Think of possible solutions 3. Select the one that we think is the best under the prevailing circumstances 4. And then apply that solution 5. If the solution woks as desired, fine; else we go back to step 2 5
  • Solving Problems (2)• It is quite common to first solve a problem for a particular case• Then for another• And, possibly another• And watch for patterns and trends that emerge• And to use the knowledge form those patterns and trends in coming up with a general solution 6
  • Solving Problems (3)• It helps if we have experienced that problem or similar ones before• Generally, there are many ways of solving a given problem; the best problem-solvers come-up with the most appropriate solution more often than not!• The process that can be used to solve a problem is termed as the “algorithm” 7
  • Examples• Addition• Conversion from decimal to binary• The process of boiling an egg• The process of mailing a letter• Sorting• Searching 8
  • Let us write down the algorithm for a problem that is familiar to us Converting a decimal number into binary 9
  • Convert 75 to Binary 2 75 remainder 2 37 1 2 18 1 2 9 0 2 4 1 2 2 0 2 1 0 0 1 1001011 10
  • Algorithm for Decimal-to-Binary Conversion1. Write the decimal number2. Divide by 2; write quotient and remainder3. Repeat step 2 on the quotient; keep on repeating until the quotient becomes zero4. Write all remainder digits in the reverse order (last remainder first) to form the final result 11
  • Three Requirements:1. Sequence is: a. Precise b. Consists of a limited number of steps2. Each step is: a. Unambiguous b. Executable3. The sequence of steps terminates in the form of a solution 12
  • Why Algorithms are Useful?• Once we find an algorithm for solving a problem, we do not need to re-discover it the next time we are faced with that problem• Once an algorithm is known, the task of solving the problem reduces to following (almost blindly and without thinking) the instructions precisely• All the knowledge required for solving the problem is present in the algorithm 13
  • Why Write an Algorithm Down?• For your own use in the future, so that you don’t have spend the time for rethinking it• Written form is easier to modify and improve• Makes it easy when explaining the process to others 14
  • Analysis of Algorithms• Analysis in the context of algorithms is concerned with predicting the resources that re requires: – Computational time – Memory – Bandwidth – Logic functions• However, Time – generally measured in terms of the number of steps required to execute an algorithm - is the resource of most interest• By analyzing several candidate algorithms, the most efficient one(s) can be identified 15
  • A Selection of Algorithmic Application Areas• Search• Sort• Cryptography• Numeric• Graphical• Quantum computing 16
  • We’ll now talk about the variousways of representing algorithms.But, before we do that please allowme to say a few words about … 17
  • Syntax & SemanticsAn algo. is “correct” if its: WARNINGS: – Semantics are correct 1. An algo. can be – Syntax is correct syntactically correct, yet semanticallySemantics: incorrect – very The concept embedded in dangerous situation! an algorithm (the soul!) 2. SyntacticSyntax: correctness is easier The actual representation to check as of an algorithm (the body!) compared with 18
  • Now onto Algorithm Representation• We have said enough about algorithms – their definition, their types, etc.• But, how do we actually represent them?• Generally, SW developers represent them in one of three forms: – Pseudo code – Flowcharts – Actual code 19
  • HOW TO WRITE AN ALGORITHM• Part-1:-• NAME OF ALGORITHM(NAME OF VARIABLES USED)• BRIEF DISCRIPTION ABOUT VARIABLES USED IN SIMPLE ENGLISH• Part-2:-• Series of steps to solve a problem 20
  • OPERATIONS THAT CAN BE PERFORMED• TRAVERSING• INSERTION• DELETION• SORTING• MERGING 21
  • Types of sorting• Bubble sorting.• Selection sorting.• Insertion sorting.• Merge sorting. 22
  • Method of Bubble sorting• To sort data in an array of n elements, n-1 iterations are required.• There are following steps explain sorting of data in ascending order using bubble sort method: 23
  • • In first Iteration, the largest value moves to the last position in the array.• In the second iteration the above process is repeated and the second largest value moves to the second last position and so on.• In n-1 iteration, the data is arranged in ascending order. 24