BI296: Linux Programming For Bioinformatics
[Exercise 1](Due: Mar 23, 2018)
[Exercise 2: Regular Expression](Due: April 8, 2018)
[Exercise 3: BASH](Due: April 28, 2017.)
You are required to pack the sorting algorithms into a Python module, so that you can call all the algorithms by importing the module. Besides sorting the numerical array, the module should be able to sort a string array as well.
Image Compression algorithms can be compared under categories of lossy and lossless techniques. The best image compression algorithm known for lossy compression is 'WebP'. This algorithm became popular in May, 2014 when Facebook started using it. Google's this new image compression algorithm provides 25-35% more compression as compared to JPEG. Though the algorithm is lossy in nature but the loss of information is far beyond the scope of human visual perception.
However, when we talk about lossless compression algorithm that produces the smallest output regardless of speed, the 'best' algorithm is probably one of the PAQ-based context mining algorithms, which use a large number of independent context models to predict the next pixel in an image from neighboring pixels, followed by weighted averaging o the predictions and arithmetic coding. Some also use color transformations like (R, G, B)->(G, G-R, G-B) to decrease the correlation between colors. Here are three of the benchmarks:
A sparse matrix is a matrix which contains only a very small proportion of non-zero elements, such as a 100-by-100 matrix with only 500 non-zero elements. Can you figure out a way to store the matrix in order to reduce the storage demand? And furthermore, define some functions for sparse matrix computation, e.g., computing the sum, difference, product of two sparse matrices, or transpose the matrix, computing the determinant, eigenvalues and eigenvectors.
There are two principal types of sampling methods: permutation and bootstrapping. That is, sampling without replacement and with replacement, respectively. Here we need you to conduct these two sampling method on a vector/matrix
Write a program to simulate the four arithmetic operations on two integers of arbitrary length. Here you may treat the very long-integers as a list of characters, and save them in the stacks or queues you learn in the lecture. Then conduct the adding, subtracting, and multiplication following the procedures you learn when you were a pupil. Division is not required.