Data Structures: Introductory lecture

Slides:



Advertisements
Similar presentations
Data Structures.
Advertisements

Abstract Data Types (ADT)
Data Structures Introduction. What is data? (Latin) Plural of datum = something given.
Coursenotes CS3114: Data Structures and Algorithms Clifford A. Shaffer Yang Cao Department of Computer Science Virginia Tech Copyright ©
Introduction - The Need for Data Structures Data structures organize data –This gives more efficient programs. More powerful computers encourage more complex.
1 A Introduction to Data Structures and Algorithm Analysis Data Structures Asst. Professor Kiran Soni.
DATA STRUCTURE Subject Code -14B11CI211.
Data Structures 1- Course Syllabus. 2- Introduction about Data Structures.
Data Structures Lecture-1:Introduction
C o n f i d e n t i a l Developed By Nitendra NextHome Subject Name: Data Structure Using C Title: Overview of Data Structure.
WEEK 1 CS 361: ADVANCED DATA STRUCTURES AND ALGORITHMS Dong Si Dept. of Computer Science 1.
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
Copyright © Wondershare Software Introduction to Data Structures Prepared by: Eng. Ahmed & Mohamed Taha.
CS223 Algorithms D-Term 2013 Instructor: Mohamed Eltabakh WPI, CS Introduction Slide 1.
Data Structures Lecture 1: Introduction Azhar Maqsood NUST Institute of Information Technology (NIIT)
Lecture No.01 Data Structures Dr. Sohail Aslam
Design and Analysis of Algorithms CSC201 Shahid Hussain 1.
Fundamentals of Algorithms MCS - 2 Lecture # 1
Computer Science Department Data Structures and Algorithms Lecture 1.
Dr. Engr. Sami ur Rahman Assistant Professor Department of Computer Science University of Malakand Data Structure: Introduction.
Instructor Information: Dr. Radwa El Shawi Room: Week # 1: Overview & Review.
DATA STRUCTURES (CS212D) Week # 1: Overview & Review.
CS212: DATA STRUCTURES Lecture 1: Introduction. What is this course is about ?  Data structures : conceptual and concrete ways to organize data for efficient.
Prepared By Ms.R.K.Dharme Head Computer Department.
1 CS 350 Data Structures Chaminade University of Honolulu.
Course notes CS2606: Data Structures and Object-Oriented Development Ryan Richardson John Paul Vergara Department of Computer Science Virginia Tech Spring.
ITEC 2620M Introduction to Data Structures Instructor: Prof. Z. Yang Course Website: ec2620m.htm Office: Tel 3049.
Chapter 1 Data Structures and Algorithms. Primary Goals Present commonly used data structures Present commonly used data structures Introduce the idea.
Data Structures and Algorithms Lecture 1 Instructor: Quratulain Date: 1 st Sep, 2009.
Data Structures Lecture 1: Introduction. Course Contents Data Types   Overview, Introductory concepts   Data Types, meaning and implementation  
Lecture 11 Data Structures, Algorithms & Complexity Introduction Dr Kevin Casey BSc, MSc, PhD GRIFFITH COLLEGE DUBLIN.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
Elementary Data Organization. Outline  Data, Entity and Information  Primitive data types  Non primitive data Types  Data structure  Definition 
WELCOME to III SEM Date: Class - ECE no of present : no of absent :
1 Data Structures CSCI 132, Spring 2014 Lecture 1 Big Ideas in Data Structures Course website:
2 Obaid Ullah HOD Computer Science Dept. Superior University Sialkot Campus.
DATA STRUCTURES (CS212D) Overview & Review Instructor Information 2  Instructor Information:  Dr. Radwa El Shawi  Room: 
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
1 A Practical Introduction to Data Structures and Algorithm Analysis Chaminade University of Honolulu Department of Computer Science Text by Clifford Shaffer.
BITS Pilani Pilani Campus Data Structure and Algorithms Design Dr. Maheswari Karthikeyan Lecture1.
Introduction to Algorithm Complexity Bit Sum Problem.
南昌大学自动化系胡凌燕 1 Charpter 1 The data structures and algorithms (p3) There are often many approaches to solving a problem. How do we choose between them? 
Data Structures Dr. Abd El-Aziz Ahmed Assistant Professor Institute of Statistical Studies and Research, Cairo University Springer 2015 DS.
Maitrayee Mukerji. INPUT MEMORY PROCESS OUTPUT DATA INFO.
Lecture 1 Data Structures Aamir Zia. Introduction Course outline Rules and regulations Course contents Good Programming Practices Data Types and Data.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Algorithm homework help For More Detail help.aspx - Phone:-
Advanced Data Structures Lecture 1
Introduction toData structures and Algorithms
Course Developer/Writer: A. J. Ikuomola
Intro Data Structure.
Data Structure Interview Question and Answers
structures and their relationships." - Linus Torvalds
Data Structures (CS212D) Overview & Review.
Definition In simple terms, an algorithm is a series of instructions to solve a problem (complete a task) We focus on Deterministic Algorithms Under the.
structures and their relationships." - Linus Torvalds
Computer Architecture and Organization: Introductory lecture
Introduction CSE 373 Data Structures.
Data Structures: Trees and Binary Trees
Data Structures: Binary Search Trees
Week # 1: Overview & Review
Data Structures (CS212D) Overview & Review.
Introduction to Data Structures
Introduction to Data Structure
Abstract Data Types, Elementary Data Structures and Arrays
Course Overview CS221 – Advanced Programming
COP3530- Data Structures Introduction
Data Structures and Algorithms
structures and their relationships." - Linus Torvalds
Data Structures and Algorithms Lecture-1: Introduction
Presentation transcript:

Data Structures: Introductory lecture By: A. H. Abdul Hafez Abdul.hafez@hku.edu.tr, ah.abdulhafez@gmail.com DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Outlines What are Data Structures? What is this course looking at? Course syllabus Detailed syllabus DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

What are Data Structures and Algorithms? Programming and problem solving, with applications. Algorithm: method for solving a problem. Data structure: method to store information. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Why study Algorithms and Data Structures To become a proficient programmer. “ I will, in fact, claim that the difference between a bad programmer and a good one is whether he considers his code or his data structures more important. Bad programmers worry about the code. Good programmers worry about data structures and their relationships. ” — Linus Torvalds (creator of Linux) “ Algorithms + Data Structures = Programs. ” — Niklaus Wirth DAA, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

The Course is Looking at! Data structures is concerned with the representation and manipulation of data. All programs manipulate data. So, all programs represent data in some way. Data manipulation requires an algorithm. Algorithm design methods needed to develop programs that do the data manipulation. The study of data structures and algorithms is fundamental to Computer Science. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

The Course is Looking at! To introduce basic data structures and operations for manipulating them. To provide students with theoretical and practical knowledge to analyses the data structure needs of particular problems. To provide students with theoretical and practical knowledge to compare the efficiency of various algorithms. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

The Need for Data Structures Data structures organize data  more efficient programs. More powerful computers  more complex applications. More complex applications demand more calculations. Complex computing tasks are unlike our everyday experience. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

The Need for Data Structures: Efficiency Data structures organize data  more efficient programs. Choice of data structure or algorithm can make the difference between a program running in a few seconds or many days. A solution is said to be efficient if it solves the problem within its resource constraints. Space Time Each problem has constraints on available space and time. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Costs and Benefits Each data structure has costs and benefits. The cost of a solution is the amount of resources that the solution consumes. Any data structure requires: space for each data item it stores, time to perform each basic operation, programming effort. Rarely is one data structure better than another in all situations. Only after a careful analysis of problem characteristics, we can know the best data structure for the task. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Abstract Data Type Abstract Data Type (ADT): a definition for a data type solely in terms of a set of values and a set of operations on that data type. Each ADT operation is defined by its inputs and outputs. Operations are like: insert, search, delete, setvalue, getvalue, etc. Encapsulation: Hide implementation details. Header files vs. source files. Example: let’s have ordered list. We can initialize empty list, insert item, check for an item, etc. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Abstract Data Type A data structure is the physical implementation of an ADT. Each operation associated with the ADT is implemented by one or more subroutines in the implementation. Data structure usually refers to an organization for data in main memory. File structure: an organization for data on peripheral storage, such as a disk drive. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Logical vs. Physical Form In a program, implement an ADT, then think only about the ADT, not its implementation. Data items have both a logical and a physical form. Logical form: definition of the data item within an ADT. Ex: Integers in mathematical sense: +, - Physical form: implementation of the data item within a data structure. Ex: 16/32 bit integers, overflow DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Course Syllabus, 1semester DSA course Introduction 1 weeks C Programming Review 1 week Structure and self referential structure 1 week Elementary data structures 1 week Arrays, lists Elementary data structures 2 weeks Stacks and queues Hash table 1 week Tree and Binary search tree 1 weeks Sorting and Heap sort 2 weeks Graphs 2 week DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

Prerequisite and texts. TEXT BOOKS: T1: Sartaj Sahni, ‘Data structures algorithms and applications in C++’, University Press T2: Deitel and Deitel , “C How to Program”, 7th edition, Pearson. REFERENCE BOOKS: R1: “ Introduction to Algorithms” – T H Cormen, et al. , 3rd Edition. The MIT Press. 2009. R2: ’Introduction to Design and Analysis of Algorithms’ – R C T Lee and T T Sai. R3: Clifford A. Shaffer ‘Data Structures and Algorithm Analysis’ , edition 3.2. DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018

The end of the Lecture Thanks for your time Questions are welcome DS, by Dr. A.H. Abdul Hafez, CE Dept. HKU December 6, 2018