انت هنا الان : شبكة جامعة بابل > موقع الكلية > نظام التعليم الالكتروني > مشاهدة المحاضرة

Algorithms Design and Analysis

الكلية كلية تكنولوجيا المعلومات     القسم قسم البرامجيات     المرحلة 3
أستاذ المادة اسراء هادي علي الشمري       22/10/2014 06:26:18
References:
1- Cormen T. H., "Introduction to Algorithms", 2001.
2- Alsuwaivel M. H., "Algorithms Design Techniques and Analysis",
2002.
3-Dasgupta S., "Algorithms", 2006.
Introduction
Sometimes, a certain problem can be solved in different methods,
some of them are efficient than the others. Thus, the is basic subject in
computer sciences, where any problem will be solved by designing an
algorithm which is converted to a program that aims to achieve the
purpose of such problem.
The Difference between the algorithm and the program
An algorithm is a sequence of finite and unambiguous statements for
solving a problem, it is a description of how to transform a value, called
input, to a value, called output. The description can be expressed in
English, pseudo code, or flowcharts.
While the program is an algorithm which is expressed in any
programming language.

Problem
Algorithm
Implementation
2
Characteristics of an algorithm
In any algorithm the following requirements must be establised:
1. Input: valid inputs are clearly specified or without inputs.
2. Output: must be returns at least one output value.
3. Definiteness: every statement is clear and unambiguously.
4. Finiteness: terminates after a finite number of steps
5. Effectiveness: steps are sufficiently simple, basic and can be
solved.
Ex: The following algorithm finds the summation of two numbers, it
represented in simple nature language.
Step 1: Read the first number in variable x.
Step 2: Read the second number in variable y.
Step 3: Perform the addition of both numbers and store the result
in variable z.
Step 4: Return the addition result.
Steps of building good program
1- Requirements Specification: Determine inputs and outputs of the
problem.
2- Algorithm Design: Determine basic operations for solving the
problem.
3- Algorithm Analysis: A problem can be solved in many methods,
these algorithms are analyzed depending on space and time complexities
to choose efficient algorithm.
4- Coding: Convert an algorithm to a program after determine suitable
data structure for each object.
5- Verification: This step includes three sides:
- Proving: Prove correctness of the program.

المادة المعروضة اعلاه هي مدخل الى المحاضرة المرفوعة بواسطة استاذ(ة) المادة . وقد تبدو لك غير متكاملة . حيث يضع استاذ المادة في بعض الاحيان فقط الجزء الاول من المحاضرة من اجل الاطلاع على ما ستقوم بتحميله لاحقا . في نظام التعليم الالكتروني نوفر هذه الخدمة لكي نبقيك على اطلاع حول محتوى الملف الذي ستقوم بتحميله .