Assignment 1 & 2
Assignment 1 & 2
PageRank Algorithm
PageRank was developed at Stanford University by Larry Page and Sergey Brin in
1996 as part of a research project about a new kind of search engine. A page is
ranked higher as there are more links to it. The first paper about the project,
describing PageRank and the initial prototype of the Google search engine, was
published in 1998 shortly after, Page and Brin founded Google Inc., the company
behind the Google search engine. While just one of many factors that determine the
ranking of Google search results, PageRank continues to provide the basis for all of
Google's web search tools.
It is often argued that, especially considering the dynamic of the internet, too much
time has passed since the scientific work on PageRank, as that it still could be the
basis for the ranking methods of the Google search engine. There is no doubt that
within the past years most likely many changes, adjustments and modifications
regarding the ranking methods of Google have taken place, but PageRank was
absolutely crucial for Google's success, so that at least the fundamental concept
behind PageRank should still be constitutive.
The random surfer visits a web page with a certain probability which derives from the
page's PageRank. The probability that the random surfer clicks on one link is solely
given by the number of links on that page. This is why one page's PageRank is not
completely passed on to a page it links to, but is divided by the number of links on
the page.
Assignment # 02
Sorting Algorithm
In computer science, a sorting algorithm is an algorithm that puts elements of a list in a
certain order. Efficient sorting is important for optimizing the use of other algorithms
(such as search and merge algorithms) which require input data to be in sorted lists; it is
also often useful for canonicalizing data and for producing human-readable output.
Bubble Sort
Bubble sort, sometimes referred to as sinking sort, is a simple sorting algorithm that
repeatedly steps through the list to be sorted, compares each pair of adjacent items
and swaps them if they are in the wrong order. The pass through the list is repeated
until no swaps are needed, which indicates that the list is sorted.
Binary Sort
In computer science, binary search, also known as half-interval search, logarithmic
search, or binary chop, is a search algorithm that finds the position of a target value
within a sorted array. Binary search compares the target value to the middle element of
the array; if they are unequal, the half in which the target cannot lie is eliminated and the
search continues on the remaining half until it is successful. If the search ends with the
remaining half being empty, the target is not in the array.
Bucket Sort
Bucket sort, or bin sort, is a sorting algorithm that works by distributing the elements of
an array into a number of buckets. Each bucket is then sorted individually, either using a
different sorting algorithm, or by recursively applying the bucket sorting algorithm.
Bucket sort can be implemented with comparisons and therefore can also be
considered a comparison sort algorithm. The computational complexity estimates
involve the number of buckets
Quick Sort
Quicksort (sometimes called partition-exchange sort) is an efficient sorting algorithm,
serving as a systematic method for placing the elements of an array in order. Developed
by Tony Hoare in 1959 and published in 1961, it is still a commonly used algorithm for
sorting. When implemented well, it can be about two or three times faster than its main
competitors, merge sort and heapsort.