PA3 Design Specification

Similar documents
STACKS AND QUEUES. Problem Solving with Computers-II

CS 206 Introduction to Computer Science II

The Stack and Queue Types

EC8393FUNDAMENTALS OF DATA STRUCTURES IN C Unit 3

Stack Applications. Lecture 27 Sections Robb T. Koether. Hampden-Sydney College. Wed, Mar 29, 2017

STACKS. A stack is defined in terms of its behavior. The common operations associated with a stack are as follows:

Algorithms and Data Structures Exercise I

The Bucharest University of Economic Studies. Data Structures. ADTs-Abstract Data Types Stacks and Queues

Data Structure using C++ Lecture 04. Data Structures and algorithm analysis in C++ Chapter , 3.2, 3.2.1

1 P age DS & OOPS / UNIT II

Stacks. Chapter 5. Copyright 2012 by Pearson Education, Inc. All rights reserved

Stack Abstract Data Type

infix expressions (review)

How to Win Coding Competitions: Secrets of Champions. Week 2: Computational complexity. Linear data structures Lecture 5: Stack. Queue.

Sample Question Paper

First Semester - Question Bank Department of Computer Science Advanced Data Structures and Algorithms...

CS 206 Introduction to Computer Science II

Lecture Data Structure Stack

DNHI Homework 3 Solutions List, Stacs and Queues

MULTIMEDIA COLLEGE JALAN GURNEY KIRI KUALA LUMPUR

INSTITUTE OF AERONAUTICAL ENGINEERING

University of Palestine. Final Exam 2 nd semester 2014/2015 Total Grade: 50

R13. II B. Tech I Semester Supplementary Examinations, May/June DATA STRUCTURES (Com. to ECE, CSE, EIE, IT, ECC)

Formal Languages and Automata Theory, SS Project (due Week 14)

CS W3134: Data Structures in Java

Overview of Data. 1. Array 2. Linked List 3. Stack 4. Queue

Stacks Calculator Application. Alexandra Stefan

Stacks. stacks of dishes or trays in a cafeteria. Last In First Out discipline (LIFO)

12 Abstract Data Types

17CS33:Data Structures Using C QUESTION BANK

CSE 230 Intermediate Programming in C and C++

Postfix (and prefix) notation

Stack Applications. Lecture 25 Sections Robb T. Koether. Hampden-Sydney College. Mon, Mar 30, 2015

Where does the insert method place the new entry in the array? Assume array indexing starts from 0(zero).

Some Applications of Stack. Spring Semester 2007 Programming and Data Structure 1

Lecture 4 Stack and Queue

Introduction p. 1 Pseudocode p. 2 Algorithm Header p. 2 Purpose, Conditions, and Return p. 3 Statement Numbers p. 4 Variables p. 4 Algorithm Analysis

15. Stacks and Queues

March 13/2003 Jayakanth Srinivasan,

Lists, Stacks, and Queues. (Lists, Stacks, and Queues ) Data Structures and Programming Spring / 50

ADVANCED DATA STRUCTURES USING C++ ( MT-CSE-110 )

09 STACK APPLICATION DATA STRUCTURES AND ALGORITHMS REVERSE POLISH NOTATION

Stacks. Revised based on textbook author s notes.

Draw a diagram of an empty circular queue and describe it to the reader.

Information Science 2

CMSC 341. Linked Lists, Stacks and Queues. CMSC 341 Lists, Stacks &Queues 1

Data Structure. Recitation VII

Data Structures. Outline. Introduction Linked Lists Stacks Queues Trees Deitel & Associates, Inc. All rights reserved.

Section I. 1 Review of user defined function,recursion, pointer, structure 05 2 Introduction to Data Structures and stack

Top of the Stack. Stack ADT

Lab 7 1 Due Thu., 6 Apr. 2017

Foundations of Data Structures

SCHOOL OF COMPUTER AND COMMUNICATION ENGINEERING. EKT224: ALGORITHM AND DATA STRUCTURES (Stack, Queue, Linked list)

Lecture 3: Stacks & Queues

Tutorial 3: Infix, Prefix, Postfix & Tower of Hanoi

CS350 - Exam 1 (100 Points)

CSE373: Data Structures and Algorithms Lecture 1: Introduction; ADTs; Stacks/Queues. Lauren Milne Summer 2015

-The Hacker's Dictionary. Friedrich L. Bauer German computer scientist who proposed "stack method of expression evaluation" in 1955.

DATA STRUCTURES USING C

3137 Data Structures and Algorithms in C++

GUJARAT TECHNOLOGICAL UNIVERSITY COMPUTER ENGINEERING (07) / INFORMATION TECHNOLOGY (16) / INFORMATION & COMMUNICATION TECHNOLOGY (32) DATA STRUCTURES

ADT Stack. Inserting and deleting elements occurs at the top of Stack S. top. bottom. Stack S

Lecture No.04. Data Structures

8. Fundamental Data Structures

DYNAMIC MEMORY ALLOCATION AND DEALLOCATION

Bharati Vidyapeeth s College Of Engineering for Women Pune-43 Department E & TC. SE- Unit Test I Subject-DS

csci 210: Data Structures Stacks and Queues

Stacks, Queues and Hierarchical Collections. 2501ICT Logan

R10 SET - 1. Code No: R II B. Tech I Semester, Supplementary Examinations, May

Stacks and their Applications

Data Structures Question Bank Multiple Choice

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- OCTOBER, 2012 DATA STRUCTURE

Queues Fall 2018 Margaret Reid-Miller

E.G.S. PILLAY ENGINEERING COLLEGE (An Autonomous Institution, Affiliated to Anna University, Chennai) Nagore Post, Nagapattinam , Tamilnadu.

FORTH SEMESTER DIPLOMA EXAMINATION IN ENGINEERING/ TECHNOLIGY- MARCH, 2012 DATA STRUCTURE (Common to CT and IF) [Time: 3 hours

Programming in C++ Prof. Partha Pratim Das Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

COMP 250. Lecture 8. stack. Sept. 25, 2017

COSC160: Data Structures: Lists and Queues. Jeremy Bolton, PhD Assistant Teaching Professor

Content: Learning Objectives

Solution: The examples of stack application are reverse a string, post fix evaluation, infix to postfix conversion.

Linked Structures. See Section 3.2 of the text.

Table of Contents. Chapter 1: Introduction to Data Structures... 1

Dynamic Data Structures

DATA STRUCTURE UNIT I

Lecture 12 ADTs and Stacks

Sai Nath University. Assignment For MCA 2nd Sem.

DATA STRUCUTRES. A data structure is a particular way of storing and organizing data in a computer so that it can be used efficiently.

IT 4043 Data Structures and Algorithms. Budditha Hettige Department of Computer Science

MIDTERM EXAMINATION Spring 2010 CS301- Data Structures

Abstract Data Types 1

VALLIAMMAI ENGINEERING COLLEGE

Linked List. April 2, 2007 Programming and Data Structure 1

Top of the Stack. Stack ADT

Linked List Implementation of Queues

CS 331 Midterm Exam 2

Wentworth Institute of Technology COMP201 Computer Science II Spring 2015 Derbinsky. Stacks and Queues. Lecture 11.

Objective Questions for Online Practical Exams under CBCS Scheme Subject: Data Structure-I (CS-113)

Stack and Its Implementation

Stacks, Queues and Hierarchical Collections

Linear Data Structures

Transcription:

PA3 Teaching Data Structure 1. System Description The Data Structure Web application is written in JavaScript and HTML5. It has been divided into 9 pages: Singly linked page, Stack page, Postfix expression page, Infix expression page, Queue page, Prefix expression page, Doubly linked list page, Circular linked list page and Tutorial page. Each pages includes a basic operation such as addition buttons, delete buttons, Push button, Pop button, Enqueue button and Dequeue button. The system is allowing the user to press all buttons. After the user press any button, the system will perform a calculation using JavaScript to display animation of a java code of each basic operation. 1.1 Perspective The relationship between Web Application and other systems and users is shown in Figure 1. Users HTML browser Client Application Server Student User Interface Data Lecturer Anyone interested in data structure HTML + JavaScript Output from sever side Application Logic Web Pages (HTML) Figure 1: Perspective Block Diagram The system is allowing the users to press all buttons and will receive the action or texts input from the user and then start calculation using JavaScript. After finish the calculation, the web application will display the animation and java code of each basic operation. For example if the user press the remove first button, the java of remove first will appear and the first node will fade away then the next node will be the first node. The user will see a difference of each operation. Teaching Data Structure 1

User Interface Processing PA3 1.2 Functions The functions of Web Application are shown in Figure 2. Web Application Server Buttons Screen (Show the basic operation code) Screen (Display an animation) Addition Deletion Push/ Pop Enqueue Dequeue Data Application Logic Speed 1/ 2/ 3 Create an animation (JavaScript) Repeat/ undo Figure 2: Function Block Diagram The functions are summarized as: The Screen: connect to the server and display an animation after Create an animation (JavaScript). The Screen: connect to the server and display a code after Create an animation (JavaScript). The addition buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an The deletion buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an The Push buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an Teaching Data Structure 2

The Pop buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an The Enqueue buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an The Dequeue buttons: connect to the server (Application logic) and it will create an animation (JavaScript) after finish application logic process then display an The Speed1 buttons: connect to the server (Application logic) and the speed will change after finish application logic process. It will display an animation of basic operation with speed1 on screen. The Speed2 buttons: connect to the server (Application logic) and the speed will change after finish application logic process. It will display an animation of basic operation with speed2 on screen. The Speed3 buttons: connect to the server (Application logic) and the speed will change after finish application logic process. It will display an animation of basic operation with speed3 on screen. The repeat buttons: connect to the server (Application logic) and the basic operation will be repeat after finish application logic process. It will repeat an animation of basic operation on screen. The undo buttons: connect to the server (Application logic) and the basic operation will be undo after finish application logic process. It will undo an animation of basic operation on screen. Teaching Data Structure 3

Navigation The basic operation and features PA3 2. Detailed design 2.1 Data structure Web application flow chart Singly linked list - Group of addition - Group of deletion - Undo and repeat S-List Stack Push/ Pop/ Empty/ Reverse/ Palindrome checking S-List Stack (Postfix Expression) - Start HOME PAGE S-List Stack (Infix Expression) - Start S-List Queue - Enqueue/ Dequeue/ Empty S-List Queue (Prefix Expression) - Start Doubly linked list - Group of addition - Group of deletion - Undo and repeat Figure 3: Web Application Flow Chart Circular linked list Tutorial Video - Group of addition - Group of deletion - Undo and repeat Teaching Data Structure 4

Data Structure web application Flow Chart show how a user would normally use the web application by traversing through several web page: Singly linked list page: This page includes a group of addition, deletion, speed, undo and repeat. Stack page: This page includes Push/ Pop/ Empty/ Reverse/ Palindrome checking, speed. Postfix expression page: This page includes start, speed and a group of number, operand and parenthesis. Infix expression page: This page includes start, speed and a group of number, operand and parenthesis. Queue page: This page includes enqueue, dequeue, empty, start, speed. Prefix expression: This page includes Push/ Pop/ Empty/ Reverse/ Palindrome checking, speed and a group of number, operand and parenthesis. Doubly linked list page: This page includes a group of addition, deletion, speed, undo and repeat. Circular linked list page: This page includes a group of addition, deletion, speed, undo and repeat. Tutorial page: This page is a video tutorial to guide the users. All of the data structure buttons are placed in one page so, the users are able to access every page from clicking the buttons of each data structure at home page and it will automatically change to the selected data structure page. The database is not requiring because this web application is simple and the collection of information is not necessary. Teaching Data Structure 5

2.2 How the users using this web application flow chart Start Yes Do you want to learn data structure? No Stop Yes Do you want to learn how to use this web application? No Open Tutorial video Open web application END Select data structure type from home page Learn data structure END Figure 4: the user Flow Chart The user s flow chart describes how the user using this web application. The users can use this web application step by step as a figure 4 which is open the web application and then make a decision to use this web application. Teaching Data Structure 6

2.3 User interface design Figure 5 : Home page When the user open this web application, It will show this home page which includes the buttons of various data structure buttons such as Singly linked page, Stack page, Postfix expression page, Infix expression page, Queue page, Prefix expression page, Doubly linked list page, Circular linked list page and Tutorial page. Figure 6 : Singly linked list page The users are able to access this page via Singly linked list button from home page. This page includes the buttons of basic operations such as groups of addition for adding a new node at any positions, a group of deletion for remove the node at any position, a group of speed, a group of undo and repeat and java code. The screen will display the animation when the users press any basic operation buttons. Teaching Data Structure 7

Figure 7 : Stack page The users are able to access this page via Stack button from home page. This page includes the buttons of basic operations such as pop, push, empty, reverse, palindrome checking, a group of speed and java code. The screen will display the animation when the users press any basic operation buttons. Figure 8 : Postfix expression page The users are able to access this page via Postfix expression button from home page. This page includes the buttons of basic operations such as groups of number, operand, parenthesis, a group of speed and java code. The screen will display the animation after the users input the expression and press start buttons. Teaching Data Structure 8

Figure 9 : Infix expression page The users are able to access this page via Infix expression button from home page. This page includes the buttons of basic operations such as groups of number, operand, parenthesis, a group of speed and java code. The screen will display the animation after the users input the expression and press start buttons. Figure 10 : Queue page The users are able to access this page via Queue button from home page. This page includes the buttons of basic operations such as dequeue, enqueue, empty, a group of speed and java code. The screen will display the animation after the users input the expression and press start buttons. Teaching Data Structure 9

Figure 11 : Prefix expression page The users are able to access this page via Prefix expression button from home page. This page includes the buttons of basic operations such as groups of number, operand, parenthesis, a group of speed, and java code. The screen will display the animation after the users input the expression and press start buttons. Figure 12 : Doubly linked list page The users are able to access this page via Doubly linked list button from home page. This page includes the buttons of basic operations such as groups of addition for adding a new node at any positions, a group of deletion for remove the node at any position, a group of speed, a group of undo and repeat and java code. The screen will display the animation when the users press any basic operation buttons. Teaching Data Structure 10

Figure 13 : Circular linked list page The users are able to access this page via Circular linked list button from home page. This page includes the buttons of basic operations such as groups of addition for adding a new node at any positions, a group of deletion for remove the node at any position, a group of speed, a group of undo and repeat and java code. The screen will display the animation when the users press any basic operation buttons. Teaching Data Structure 11