Posts
Maged Helmy
Cancel

Practice Linked List with Python Code

Question: An implementation of a singly double list Explanation: Here we have 6 different methods on the class of the linked list. Where you can get, addAthead, addAtTail, addAtindex and deleteAtI...

Practice Arrays with Python Code

485: Max Consecutive Ones: Given a binary array, find the maximum number of consecutive 1s in this array. Explanation: We create two variables, one called counter which keeps track of the number o...

Sorting Techniques

Sorting Techniques Using the built in sort is okay with small data is okay. But when it comes to big data the built in sort is very expensive, the Big O! Sorting is arranging data in a particular...

Region Proposal Based Framework for Object Detection

Abstract The goal of this essay is to describe the top 7 promising approaches in generic object detection of still images including the problem they aim to tackle, the methodology applied, the res...

Why Designing Transparent AI Matters?

Building a fair algorithm in an unfair society Abstract Although Artificial Intelligence (AI) has proven to have great potential in many industrial applications [1]–[3], research lacks sufficient...

A Code Reviewer Guide to Code Review

Introduction This article aims to present the code reviewer developer guide adopted by Google. The goal of having code reviews is to maintain the quality of the code, and ultimately the product. A ...

A Developer Guide to Writing CL Changes

Writing a Good ChangeList (CL) Description: A CL description is a record of what change is being made, and why it has been made. This is submitted along with the code you have written. It will als...

Dijkstra Shortest Path

Shortest path by Dijkstra: The goal is to find the shortest path between two vertices. The objective is to find the shortest path from the starting vertices to any vertices. An example of greedy al...

Bellman Ford

Searching Techniques

Linear Search A sequential search is made over all items one by one. Every item is checked and if a match is found then the item is returned. Otherwise, the search continues to the end. with O(n)...

Graphs

Graph Data Structure A graph is a pictorial representation of a set of objects where some pairs of objects are connected by links. The interconnected objects are represented by points termed as ve...

Understanding Tree Data Structure

Tree data Structure A tree presents the nodes connected by edges. Binary tree is a special data structure used for data storage purposes. A binary tree has a special condition that each node can h...

Recursions

Recursion A recursion is where a function calls itself directly, or calls a function to call it directly. A recursive function can go infinite like a loop, therefore there must be 2 conditions. S...

Linked List

Linked List Basics A linked list is a sequence of data structure which are connected via links. They are a list in a sequence connected by links which contains items. Each link contains a connecti...

Stack and Queue

Stacks An abstract data structure is defined by a set of values and set of operations. The abstract is used to perform different operations that are abstracted from the user. In other words, an ab...

Searching Techniques

Hash Table Hash table is a data structure which stores data in an associative manner. In a hash table, data is stored in an array format, where each data value has its own unique index value. Thus...

The Big O Notation

Big O Asymptotic analysis is defining the mathematical framing of an algorithm run-time performance. This helps us in concluding the best case (minimum time required to run execution), average cas...

What are Data Structures ?

Data Structure Introduction: Data structure is a systematic way to organize data to use it efficiently. There are two main data types, Built-in Data Type and Derived Data Type. In other words a da...

Understanding Arrays

Array Introduction An array is a container which holds a fix number of items and these items should be of the same type. Arrays is also known as lists. The two concepts of an array are an element...

What are Algorithms?

Algorithms When starting with any problem to solve. Clearly have the input stated and the output stated. Also, right down any edge cases as part of the input. The algorithm bridges the input with ...

Learning How to Learn

Learning how to Learn: As a software engineer, the only thing that does not change about software is that it continuously changes. Therefore, learning is your ultimate destination. Below I summari...

Contribute to Public Repo

This is a tutorial on how to contribute to a public repo using Github

Writing a New Post

Naming and Path Create a new file named with the format YYYY-MM-DD-title.md then put it into _post of the root directory. Front Matter Basically, you need to fill the Front Matter as below at th...