Dr.Babasaheb Ambedkar Marathwada University , Aurangabad Advances in Data Structure & Algorithms Dr.Kaveri Lad Assistant Professor(MCA) Department of Management Science Dr.Babsaheb Ambedkar Marathwada University, Auranagabad Introduction to Data Structure
CONTENTS Unit-V Managing Input / Output Files in JAVA : streams, streams classes, Byte streams classes , reading and writing characters , bytes, Random Access Files , Interactive I/p and o/p, Reflection API- class identification, interface identification, parent class information and methods information. Data Structure – Definition & Types Algorithms – Definition and Examples Time Complexity Asymptotic Notations and Its types
Data Structure Data Structure can be defined as the group of data elements which provides an efficient way of storing and organising data in the computer System . Data Structure manipulate the data very efficiently.
Classification of Data Structure
Difference between Linear & Non-linear Data Structure Linear Data Structures Non-Linear Data Structures Elements are ordered in a linear and sequential manner. Elements are ordered in a hierarchy. Only a single level is present. Multiple level data structures are present. Implementation is relatively easier. Implementation is relatively complicated. Traversed in a single run Take multiple runs to traverse the data. Memory utilization is not efficient compared to non-linear data structures Memory utilization is efficient. Examples: array, queue, linked list, etc. Example: Trees, graphs, etc. Applications of linear DS are mainly in application software development. Applications of non-linear DS are in Artificial Intelligence and image processing.
Algorithm ” A set of rules to be followed in calculations or other problem-solving operations ” Or ” A procedure for solving a mathematical problem in a finite number of steps that frequently by recursive operations “. Algorithms can be simple or complex, it depends on nature of the problems
Steps to write Algorithm -> Program Formulation of Problem Algorithm Flowchart Program
Example to write Algorithm -> Program Write an Algorithm to find the area of Circle Formula : Area = PI * R*R Where pi =3.14 Algorithm : Start Assign PI = 3.14 Input R Area = PI * R * R Print Area End
Example to write Algorithm -> Program Write an Algorithm to find the greater number among two Formula : Logical Operation Algorithm : Start Input A, B If A > B Then Print A is greater Else Then Print B is greater End
Time Complexity of an Algorithms / Asymptotic analysis of an algorithm Time complexity of an algorithm signifies the total time required by the program to run till its completion. Asymptotic analysis : It refers to defining the mathematical boundation /framing of its run-time performance. Using asymptotic analysis : Best Case, Average Case, Worst Case
Asymptotic Notations Big Oh Notation, Ο Omega Notation, Ω Theta Notation, θ