Explore chapters and articles related to this topic
Introduction
Published in Suman Saha, Shailendra Shukla, Advanced Data Structures, 2019
Different kinds of data structures are generally used in different problems. A data structure can implement an abstract data types, and adopt the specifications of operations and complexities. Different application tasks are often solved using various types of data structures, some of which are highly specialized for specific tasks. Data structures provide mechanisms to organize and manage large amounts of data efficiently for several uses in most domains of computer science. To be more specific, the efficient data structures are the key to designing efficient algorithms whatever the domain may be. Some formal design paradigm and programming languages put more emphasis on data structures than algorithms. They argue that data structures are the key organizing factors in software design. Data structures describe the access patterns of data stored in both main and secondary memories. To implement a data structure, we usually require to write a set of procedures that access and organize data instances of that structure. The efficiency of a data structure can be analyzed by counting the number of times a particular operation is performed. This is the underlying theoretical concept of an abstract data type. A data structure can be defined alternatively by the designs of its access mechanisms and operations sequences.
Introduction to Expert Systems
Published in Chris Nikolopoulos, Expert Systems, 1997
The object oriented paradigm has emerged from developments in the disciplines of programming languages, artificial intelligence and databases. In programming languages, the object oriented concepts were the results of extensions of the concepts of abstract data types, information hiding and encapsulation. In artificial intelligence, Minsky's theory of frames was used for knowledge representation and is analogous to object oriented programming. Finally in databases, semantic data modelling research evolved to object oriented database concepts. We describe below a set of characteristics, whose presence is necessary in order to label a system as "object oriented". These features are encapsulation, information hiding, methods, messages, inheritance, overloading, polymorphism and late binding.
Object-Oriented Modeling and Simulation
Published in Derek A. Linkens, CAD for Control Systems, 2020
Sven Erik Mattsson, Mats Andersson, Karl Johan Åström
Class inheritance is a concept used for defining abstract data structures in some programming languages. It was first introduced in Simula [5] and has become an important concept in object-oriented programming. For an overview of object-oriented terminology and concepts, see, for example, the work of Stefik and Bobrow [41]. In object-oriented programming, a class defines an abstract data type, i.e., a collection of data attributes and functions operating on the data. A class can be defined as a subclass of another class, called the super class or the base class. By inheritance, all attributes of the base class are available in the subclass. Additional attributes can be added to the subclass to extend or specialize the definition.
A Review of Spatial Big Data Platforms, Opportunities, and Challenges
Published in IETE Journal of Education, 2020
The Object Relational DBMS (ORDBMS), an object-oriented extension of RDBMS emerged in the 1990s [13]. The Abstract Data Type (ADT) feature of ORDBMS was leveraged to build spatial data types and operations. This resulted in Spatial Database Management System (SDBMS) that provides native support for efficient storage and querying of spatial data. The SDBMS is thus an extended version of ORDBMS that supports storage and querying of spatial data. It supports spatial data model, spatial query language, spatial indexing, and spatial operations. It can import shapefile from Desktop GIS into centralized native spatial data storage. The point, multipoint, line, multiline, polygon, polygon with hole, multi-polygon, and geometry collection spatial data types are supported by SDBMS. The spatial join operations like intersects, contains, covers, crosses, and within can join different spatial entities based on their spatial relationships. The way B-Tree access method is used in RDBMS to improve query performance; R-tree and GiST are spatial access methods for indexing points, lines, and polygons in SDBMS [14]. A brief comparison of RDBMS and SDBMS for spatial data is shown in Table 1.
Robust Shipping Date Predictions in Manufacturing using High-level Petri Nets
Published in International Journal of Modelling and Simulation, 2022
Jana Holznigenkemper, Jennifer Hannig, Jan-Niklas Keiner, Bernhard Seeger, Michael Guckert
CPN Tools implements this concept of TCPN [38]. Here, tokens are able to store individual information, i.e. they may carry different data values, which are defined by the corresponding place. For each place, this abstract data type has to be declared in a so-called colour set and is written in capital letters. Basic colour sets, such as INT, STRING, and BOOL, can be used. A combination of colour sets named product colour sets can also be defined. Furthermore, colour set can be timed. Tokens whose corresponding place has a timed colour set carry a time stamp, denoted by the symbol “@”. The time stamp specifies when a token becomes available for consumption, i.e. the corresponding transition can fire.
Priority-based state machine synthesis that relaxes behavior design of multi-arm manipulators in dynamic environments
Published in Advanced Robotics, 2023
A priority queue is an abstract data type providing the following three operations: Push operation adds an element to the priority queue.Pop operation takes out the element with the highest priority from the priority queue.CheckSize operation counts the number of elements in the priority queue. It returns 0 if the priority queue is empty.