Understanding Data Structures and Algorithms
Data Structures and Algorithms
Basic Data Structure Operations
FIFO behavior, enqueue, and dequeue are fundamental operations applied to queues.
Types of Data Structures
Trees
A tree is a multilevel data structure representing a hierarchical relationship between a finite set of individual elements called nodes.
Graphs
A graph is a non-linear data structure consisting of a set of nodes (or vertices) and edges (or arcs). Each edge connects two nodes, depicting a relationship between them.
Common Data Structure
Read MoreComputer Networks: Types, Topologies, and Devices
Computer Networks
A network is a set of interconnected computers that can communicate by sharing data and resources regardless of the physical location of the various devices. Through a network, processes can be run on another computer, files can be accessed, messages can be sent, and programs can be shared. The computers are usually connected by cables. However, if the company covers a large area, the connections can be made through telephone lines, microwaves, fiber optic lines, and even satellites.
Read MoreScrum Glossary: A Comprehensive Guide to Scrum Terms
Scrum Framework
Core Roles
Product Owner
The Product Owner champions the stakeholders’ interests and ensures the Development Team’s work delivers maximum value. They are responsible for maintaining and prioritizing the Product Backlog.
Scrum Master
The Scrum Master is a servant-leader who ensures the Scrum process is understood and correctly implemented. They guide the team, remove impediments, and facilitate Scrum events.
Development Team
A cross-functional team responsible for delivering potentially
Read MoreIntroduction to Software Engineering
The Importance of Software Engineering
The term “software engineering” was introduced in the late 1960s due to the software crisis. This crisis resulted from the introduction of the third generation of hardware. As hardware ceased to be an impediment to the development of information technology, reduced costs and the need for improved quality and efficiency of software production led to challenges characterized by the following problems:
- Unclear project planning and cost estimation.
- Poor software quality.
Cryptography, Security & Viruses: A Comprehensive Overview
Key Cryptography
Asymmetric Cryptography
Inefficient to implement (establishes symmetric key cryptography).
Symmetric Cryptography
Efficient to implement.
SSL
SSL authenticates and provides confidentiality.
Salting
Salting makes the hash unique for repeated passwords.
Can detect if a hash is salted because no particular password should have a higher frequency than any other under ideal salting. Salting truly ties the frequency.
Firewall
Limits network traffic. Many kinds: personal, filter based on packet header,
Read MoreIntroduction to Databases and SQL
Data and Databases
Data
Data is facts and figures which when combined and interpreted can form information. Data is meaningless until it is interpreted and put into context.
Databases
Databases organize and store data. They provide ways to extract data and turn it into information. They are required by any small, medium, or large business.
Different Uses
- OLTP – Online Transaction Processes
- OLAP – Online Analytical Processes
Different Types
Different types of databases affect access and data modelling.
- RDBMS
