Setting up environment for MSDProject
For this we need the following software and tools
JDK 1.8Eclipse Neon or OxygenApache TomcatMYSQLSpring LibrariesApache Commons Libraries
Download and Install the latest JDK []Setup path variables for JAVA_HOME and make sure JAVA is configured properly []Download Eclipse Installer from []Once the installer is open, select "Eclipse IDE for Java EE Developers"Download and Extract TOMCAT for windows []Setup path variables for TOMCATDownload Spring jar files []Download apache commons logging jar []Create a Github account []Dow…

Installing TOMCAT

Apache Tomcat Web Server
How to Install and Configure?
I had to use Java Spring framework for one of my projects and I needed to install Apache Tomcat Server to run the code I write. I've followed many tutorials but they were all stuck in the middle. Then I thought of writing a tutorial here to help installing it to anyone who needs the great Apache!

The Skyline Problem

Lab3.2 The Skyline Problem
The skyline problem is defined as given n rectangular buildings in a 2-dimensional city, compute the skyline of these buildings, eliminating hidden lines. The main task is to view buildings from a side and remove all sections that are not visible. All buildings share common bottom and every building can be represented by triplet (Left, Height, Right)

As an example, if the buildings array is
[ [1, 11, 5], [2, 6, 7], [3, 13, 9], [12, 7, 16], [14, 3, 25], [19, 18, 22], [23, 13, 29], [24, 4, 28] ] then the skyline is
[[1, 11], [3, 13], [9, 0], [12, 7], [16, 3], [19, 18], [22, 3], [23, 13], [29, 0]]

Finding the Odd Occurrences of a Number

Lab3.1 Finding the Odd Number of Occurrence
You are given a sorted list of numbers where one number appears odd number of times. All other numbers appear even number of times. You are required to design an efficient algorithm to find the number that appears odd number of times. I'm using the Use Divide and Conquer method which runs at $\Theta(\log(n))$

As an example, if the sorted list is
[1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 6, 6] then the odd occurrence number is 2

Reverse a Nested List Recursively

Lab2.2 Reverse a Nested List Recursively
You are expected to write a python program to reverse a list which may have nested lists within it. The number of nesting levels is not limited.

As an example, the reversed list of
[1, 2, [31, 32], 4, [51, [521, 522], 53], 6] will be
[6, [53, [522, 521], 51], 4, [32, 31], 2, 1]

Find Maximum Number in a Nested List Recursively

Lab2.1 Find Maximum in a Nested List Recursively
You are expected write a recursive python function to find the largest number within a given list. The list may contain numbers and strings and, you are expected to ignore the strings. In addition, the list may be a nested list with several nesting levels and you are expected to consider the numbers in all the nesting levels.


DDR3 and DDR4 RAM???
Once I was wondering what is the difference between DDR3 RAM and DDR3L RAM. Since there is a newer DDR4 RAM available nowadays, why there's another DDR3 RAM? Later I found out that it was designed to overcome performance issues with motherboards and processors.

I was wondering why all the leading memory manufacturing companies came up with a DDR3L. Basically DDR3 and DDR4 RAM notches are not identical. So you can't fit both RAMs in the same motherboard. But hey what if the current RAM you have is not enough or not fast enough? With current motherboard and processor limitations, the maximum speed a DDR3 RAM can work is 1600 MHz. But a DDR4 RAM can work at a speed starting from 2133 MHz.