This repository includes the Python Assignments from the Data Structures and Algorithms course I did for the partial completion of my MSc Data Science for Public Policy degree at Hertie School, Berlin.
Assignment 1:
- Convert decimal integers into 8-bit Two’s Complement signed integers.
- Addition/Subtraction of integers in Two’s Complement notation
- Conversion of fractions into 8-bit floating point (1 sign bit, 3 exponent bits and 4 mantissa bits)
- Conversion of 8-bit floating point numbers into fractions
- Write a Python function that checks if an input number is a palindrome number
- Creating a Personal Web Page using the Flask Application
Assignment 2:
- In addition to a calculator app, create a Circle class which can calculate the perimeter and area of a circle
- Creating the HTML template for the webpage
- Examine the code chunks, predict the output and comment on the output
- Comment on the Efficiency of an Algorithm
Assignment 3:
- Write a function which uses numpy to multiply two matrices together
- Write a function to do matrix multiplication for a 2 × 2 matrix
- Write a function implementing Strassen’s algorithm to multiply two matrices together
- Show that your implementation of Strassen’s algorithm gives the same result as numpy on four test matrices, of size 2 × 2, 4 × 4, 8 × 8 and 16 × 16
- Measure the empirical performance of the algorithm you have written above