Algorithms (Selon Syllabus) : 2. Algorithm Design

Download as pdf or txt
Download as pdf or txt
You are on page 1of 1

Input

Output

5 Properties of an Algorithm Finiteness

Definitivenes/Precision/Clarity

Effectiveness/Feasibility (Correctness?)

Criteria (same as Properties)

Parameters for selection (same as above?)

Pseudo-code

Flow-charts

Natural Language
Representations
DRAKON charts

Programming Language

Control Tables

Approximation Algorithm

Backtracking Algorithm

Brute Force Algorithm

By Design Paradigms (AB2D2GR) Divide-and-Conquer Algorithm

Dynamic Programming

Greedy Algorithm

Randomized Algorithm

Sequential/Linear Search

Binary Search (search from sorted structure)


Types of Algorithms
In array (Closed Hashing) - collision-prone
Searching Algorithm Storing
In array of linked-lists (Open Hashing) - no collision
Hashing (constant time search)
Searching

Trees

Bubble Sort

Merge Sort
By Application (S3IM)
Sorting Algorithm
Quick Sort

Heap Sort

String Processing

Image Processing
Design
Mathematical Algorithms

1. Requirements Specification

2. Algorithm Design

3. Check Correctness
Design Steps (same as SE)
3. Algorithm Analysis

4. Implementation

5. Testing

Decision Problem (yes/no)

Search Problem (finding y in x)

Types of Computational Problems (off-cnn) Counting Problem


Algorithms (selon Syllabus)
Optimization Problem (find best possible solution)

Function Problem (single output expected for every input e.g. traveling salesperson)

Best-case analysis

by result Average-case analysis

Worst-case analysis
Types of Analysis
Empirical approach analysis (experiments and drawing graphs)

Analytical approach analysis


by approach
(by math. models; finding running time for input size)

Visualization approach analysis


Analysis
(finding computational complexity) Find time-efficiency

Goals of Analysis FInd space utilization

Correctness

Uniform cost model (constant cost for each operation)


Analysis & Asymptotic Notations
Analysis Models
Logarithmic cost model (cost of operation proportional to no. of bits involved)

Asymptotic Notations O Notation


(aka Big-O Notation)
θ Notation
(a notation which represents growth
of function) Ω Notation

Singly Linked List

Doubly Linked List


Classification of Lists [?]
Circular Linked List Doubly Circular Linked List

Grounded Header Linked List

Types of Algorithms

[Class?]

List
Abstract Data Type (ADT) (logical form/concept)
Stack

Queue

Data Type Concepts int

Primitive (Built-in) Data Structures char

etc..
Data Structure (physical form)
A specific Class[or Object/Class Data Structure?]

Linked Data Structure


User-defined Data Structures
Record Data Structure

Array Data Structure

DES (Data Encryption Standard)


Encryption Algorithms
RSA (Rivest–Shamir–Adleman)

Genetic Algorithms

Recursion

Heuristic (Guided Search)

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy