Introduction to Data Structures

Slides:



Advertisements
Similar presentations
Trees Types and Operations
Advertisements

Data Structures Michael J. Watts
Heaps and heapsort COMP171 Fall Sorting III / Slide 2 Motivating Example 3 jobs have been submitted to a printer in the order A, B, C. Sizes: Job.
CS 104 Introduction to Computer Science and Graphics Problems Data Structure & Algorithms (4) Data Structures 11/18/2008 Yang Song.
Chapter 12 C Data Structures Acknowledgment The notes are adapted from those provided by Deitel & Associates, Inc. and Pearson Education Inc.
Queues Chapter 6. Chapter 6: Queues2 Chapter Objectives To learn how to represent a waiting line (queue) and how to use the methods in the Queue interface.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Chapter 12 – Data Structures Outline 12.1Introduction.
Introduction to Data Structures. Data Structures A data structure is a scheme for organizing data in the memory of a computer. Some of the more commonly.
Trees & Graphs Nell Dale & John Lewis (adaptation by Michael Goldwasser and Erin Chambers)
1 HEAPS & PRIORITY QUEUES Array and Tree implementations.
Chapter 12 Data Structure Associate Prof. Yuh-Shyan Chen Dept. of Computer Science and Information Engineering National Chung-Cheng University.
Introduction to Data Structures. About the document. The document is prepared by Prof. Shannon Bradshaw at Drew University. The key concepts in data structure.
Chapter 9 (modified) Abstract Data Types and Algorithms Nell Dale John Lewis.
Chapter 9 Abstract Data Types and Algorithms Nell Dale John Lewis.
9-1 Abstract Data Types Abstract data type A data type whose properties (data and operations) are specified independently of any particular implementation.
COSC 2007 Data Structures II Chapter 15 External Methods.
Data Structures Types of Data Structure Data Structure Operations Examples Choosing Data Structures Data Structures in Alice.
Data Structures Chapter 6. Data Structure A data structure is a representation of data and the operations allowed on that data. Examples: 1.Array 2.Record.
1 M I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
CPS120: Introduction to Computer Science Nell Dale John Lewis Abstract Data Types.
INTRODUCTION TO DATA STRUCTURES 1. DATA STRUCTURES A data structure is a scheme for organizing data in the memory of a computer. Some of the more commonly.
Nov 2, 2001CSE 373, Autumn Hash Table example marking deleted items + choice of table size.
OCR A Level F453: Data structures and data manipulation Data structures and data manipulation a. explain how static data structures may be.
An Introduction to Programming Using Alice Data Structures.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
Priority Queues and Heaps Tom Przybylinski. Maps ● We have (key,value) pairs, called entries ● We want to store and find/remove arbitrary entries (random.
CSE373: Data Structures & Algorithms Priority Queues
Partially Ordered Data ,Heap,Binary Heap
Pointers and Linked Lists
Data Structure By Amee Trivedi.
Chapter 12 – Data Structures
Data Structures Michael J. Watts
Chapter 11 Heap.
Top 50 Data Structures Interview Questions
Data Structure Interview Question and Answers
Text and Sound in Alice Worlds
Chapter 15 Lists Objectives
Data Structures Data Structure is a way of collecting and organising data in such a way that we can perform operations on these data in an effective.
Introduction to Data Structures
Programming Abstractions
Hashing Exercises.
Source: Muangsin / Weiss
Heapsort.
Introduction to Data Structure
Heap Chapter 9 Objectives Upon completion you will be able to:
structures and their relationships." - Linus Torvalds
original list {67, 33,49, 21, 25, 94} pass { } {67 94}
Introduction to Data Structures
B+ Trees What are B+ Trees used for What is a B Tree What is a B+ Tree
Lesson Objectives Aims
A Kind of Binary Tree Usually Stored in an Array
ITEC 2620M Introduction to Data Structures
Introduction to Data Structures
Heaps Chapter 11 has several programming projects, including a project that uses heaps. This presentation shows you what a heap is, and demonstrates.
CS Data Structure: Heaps.
A Robust Data Structure
2-3-4 Trees Red-Black Trees
Data structures.
An Introduction to Programming Using Alice 2.2, Second Edition
Introduction to Data Structures
Priority Queues & Heaps
DATA STRUCTURE.
Data Structures & Algorithms
Heapsort.
Important Problem Types and Fundamental Data Structures
Data Structures and Algorithm Analysis Priority Queues (Heaps)
Heaps and priority queues
Instructor: Dr. Michael Geiger Spring 2019 Lecture 34: Exam 3 Preview
structures and their relationships." - Linus Torvalds
Presentation transcript:

Introduction to Data Structures

Data Structures A data structure is a scheme for organizing data in the memory of a computer. Some of the more commonly used data structures include lists, arrays, stacks, queues, heaps, trees, and graphs. Binary Tree

Data Structures The way in which the data is organized affects the performance of a program for different tasks. Computer programmers decide which data structures to use based on the nature of the data and the processes that need to be performed on that data. Binary Tree

Example: A Queue A queue is an example of commonly used simple data structure. A queue has beginning and end, called the front and back of the queue. Data enters the queue at one end and leaves at the other. Because of this, data exits the queue in the same order in which it enters the queue, like people in a checkout line at a supermarket.

Example: A Binary Tree A binary tree is another commonly used data structure. It is organized like an upside down tree. Each spot on the tree, called a node, holds an item of data along with a left pointer and a right pointer. Binary Tree

Example: A Binary Tree The pointers are lined up so that the structure forms the upside down tree, with a single node at the top, called the root node, and branches increasing on the left and right as you go down the tree. Binary Tree

Choosing Data Structures By comparing the queue with the binary tree, you can see how the structure of the data affects what can be done efficiently with the data.

Choosing Data Structures A queue is a good data structure to use for storing things that need to be kept in order, such as a set of documents waiting to be printed on a network printer. .

Choosing Data Structures The jobs will be printed in the order in which they are received. Most network print servers maintain such a print queue. .

Choosing Data Structures A binary tree is a good data structure to use for searching sorted data. The middle item from the list is stored in the root node, with lesser items to the left and greater items to the right.

Choosing Data Structures A search begins at the root. The computer either find the data, or moves left or right, depending on the value for which you are searching. Each move down the tree cuts the remaining data in half.

Choosing Data Structures Items can be located very quickly in a tree. Telephone directory assistance information is stored in a tree, so that a name and phone number can be found quickly.

Choosing Data Structures For some applications, a queue is the best data structure to use. For others, a binary tree is better. Programmers choose from among many data structures based on how the data will be used by the program.

Data Structures in Alice Alice has two built-in data structures that can be used to organize data, or to create other data structures: Lists Arrays The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Lists A list is an ordered set of data. It is often used to store objects that are to be processed sequentially. A list can be used to create a queue. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays An array is an indexed set of variables, such as dancer[1], dancer[2], dancer[3],… It is like a set of boxes that hold things. A list is a set of items. An array is a set of variables that each store an item. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays and Lists You can see the difference between arrays and lists when you delete items. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays and Lists In a list, the missing spot is filled in when something is deleted. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays and Lists In an array, an empty variable is left behind when something is deleted. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Lists A list is created in Alice by checking the make a list box when creating a new variable. Make a list box The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Lists The For all in order and For all together tiles can be used to work with lists. They are at the bottom of the editor area. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays Arrays can be created in a similar manner, but more often they are created using the array visualization object from the Alice local gallery. The Array Visualization object has special properties and methods for manipulating the elements in an array. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.

Arrays Alice has a set of built-in functions that can be performed on arrays. The Redo button will reverse the last use of the Undo button, restoring the previous action. The Ctrl-Y keyboard shortcut also can be used in place of the Redo button.