What is Linked List? A linked list is a linear data structure which can store a collection of "nodes" connected together via links i.e. pointers. Linked lists nodes are not stored at a contiguous location, rather they are linked using pointers to the different memory locations. A linked list can be used for graph representations. In the graph representation: Each vertex has its own linked list that stores its adjacent vertices. This forms an adjacency list using linked lists instead of vectors or arrays. Graph The image below ... Read More
What is Adjacency List? An adjacency list is a collection of unordered lists that are used to represent a finite graph. Each list in the collection represents one of the vertex of the graph and it will store the adjacent vertices of that vertex. Let's see an example: Graph The image below represent a simple undirected graph with 6 vertices and 8 edges. Adjacency List The adjacency list of the above graph is shown below. Algorithm The following are the steps to create (represent) a graph using an adjacency list: ... Read More
What are Python Modules? Python module is a ".py" file that contains Python definitions, functions, classes, variables, constants, or any other objects. Contents in this file can be re-used in any other program. Packaging in Python Python packaging involves compressing bundles of Python code in a particular format that can be publically shared and can be installed by a tool like pip. Importing Modules To use the functionality present in any module, you need to use the import keyword along with the module name. This keyword will import the module to your current program. Syntax for this keyword is - ... Read More
What is incidence matrix? An incidence matrix is a mathematical representation of a graph that shows the relationship between vertices and edges. In other words, it is a matrix M of size v x e, where v = number of vertices and e = number of edges. For example, if the graph has an edge number n from vertex i to vertex j, then in the incidence matrix at ith row and nth column it will be 1. Graph The image below represent a simple undirected graph with 6 vertices and 8 edges. Incidence Matrix The incidence ... Read More
What is Adjacency Matrix? Adjacency matrix is a square matrix that represent a finite graph data structure using a 2D array. The each elements in the matrix represent the edges of the graph. For example, if the graph has some edges from i to j vertices, then in the adjacency matrix at ith row and jth column it will be 1 (or some non-zero value for weighted graph), otherwise that place will hold 0. Graph The image below represent a simple undirected graph with 6 vertices and 8 edges. Adjacency Matrix The adjacency matrix of the ... Read More
A tuple is an ordered, immutable sequence of elements. In Python, the grouping of elements in a tuple list based on the values of their second elements can be done using various methods like using a dictionary or using itertools.groupby() method and using defaultdict from collections. Grouping the first elements by second elements in the Tuple list means the tuple having the same second element can be grouped into a single group of elements. In this article, we will discuss how we can implement these methods so that we are able to easily group the first elements based on ... Read More
The Breadth-First Search (BFS) algorithm is a graph traversal algorithm that starts at the tree root and explores all nodes at the present depth before moving to the nodes at the next level. In this article, we will discuss how to check the connectivity of a directed graph using BFS traversal algorithm. Understanding Connectivity of a Graph A graph is said to be connected if there is a path between every pair of vertices. To check connectivity of a graph, we will try to traverse all nodes using any traversal algorithm. After completing the traversal, if there is any ... Read More
The Depth-First Search (DFS) is a graph traversal algorithm that starts at root node and explores as far as possible along each branch before moving to next branch. In this article, we will discuss how to check the connectivity of a graph using DFS traversal algorithm. Understanding Connectivity of a Graph A graph is said to be connected if there is a path between every pair of vertices. To check connectivity of a graph, we will try to traverse all nodes using any traversal algorithm. After completing the traversal, if there is any node, which is not visited, then ... Read More
Immutable Vector in Python An immutable vector in Python is a fixed, ordered collection of numerical values that cannot be changed after creation. These are implemented using a tuple or libraries like immutable arrays, which specify data consistency, preventing modifications during computations. Representing Immutable Vectors Immutable vectors can be represented using tuples, which define ordered and unchangeable values. Alternatively, libraries like NumPy allow the creation of arrays with writable=False, making them immutable. This ensures that the vector values remain constant. Here are the methods to represent immutable vectors in Python. ... Read More
In Python, the bitwise operator ~ (pronounced as tilde) is a complement operator. It takes one bit operand and returns its complement. If the operand is 1, it returns 0, and if it is 0, it returns 1. For example, consider the 4-bit binary number (1100)2. By performing the tilde operation, each bit is flipped and results in (0011)2. Tilde Operation on Decimal Numbers When we perform a tilde operation on decimal numbers, the following steps are involved: Convert the decimal number to binary, including the sign. If the number is positive, place 0 in ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP