Data structure analysis, Exercises of Data Structures and Algorithms

intro to Data structure analysis

Typology: Exercises

2017/2018

Uploaded on 10/11/2018

hassnain-ali-2
hassnain-ali-2 🇵🇰

1 document

1 / 17

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Data Structures and Algorithms
LECTURE 1 - Introduction
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Data structure analysis and more Exercises Data Structures and Algorithms in PDF only on Docsity!

Data Structures and Algorithms

LECTURE 1 - Introduction

Outline

  • (^) Define Algorithm and Data Structure
  • (^) How Data Structure and Algorithms are correlated to each other
  • (^) Qualities of a good Algorithm
  • (^) What this course is about and why is it important

Algorithm - Definition

  • (^) Algorithm is well defined, step by step procedure to solve a problem.
  • (^) It takes some input , performs a sequence of computations, produces output. Instance of input Required Output Algorithm

Example H C

C H H B B H H A A H C E E C E B B E

.. .. E U

  • Find places adjacent to home.
  • Keep record of the distance covered.
  • For each place in adjacent places, find next adjacent nodes, until you get to the destination.
  • Compare the distance of multiple paths.
  • Path with the shortest distance is solution.

Algorithm - Definition

  • Algorithm is well defined, step by step procedure to solve a problem.
  • It takes some input , performs a sequence of computations, produces output. Instance of input Required Output Algorithm

In this Course

  • (^) Data Structures
  • (^) Algorithm
  • (^) Analysis

Data Structures – in this course

  • (^) Linked list ( single, double, circular)
  • (^) Stack
  • (^) Queue
  • (^) Tree
  • (^) Graph
  • (^) Hash Table
  • (^) Heap Analyze DS’s for basic operations

Why learn Data Structures and Algorithms?

  • (^) Thinking beyond the data structures provided by a language
  • (^) You’ll come across some very interesting, non intuitive ways of solving problems
  • (^) Better hardware is not solution
  • (^) Learn some interesting design paradigms
  • (^) It’s a skill
  • (^) Inefficient solution - without the knowledge of algorithms
  • (^) It will teach you the science of evaluating the efficiency of an algorithm.

Textbooks

Mark A. Weiss, Data Structures and Algorithm Analysis in C++, Fourth Edition (2013) T. H. Cormen, Charles E. Leiserson, R. L. Rivest, Clifford S. Introduction to Algorithms, Third Edition (2009) Steven S Skiena. The Algorithm Design Manual, Second Edition (2008)

Theory

  • (^) Assignments 10%
  • (^) Quizzes 10%
  • (^) OHT-1 15%
  • (^) OHT-2 15%
  • (^) Final Exam 50% Lab
  • (^) Lab Assignments 70%
  • (^) Semester Project 30%

Instructor : Amna Ali Ahmed Contact: [email protected]