some study notes about algorithms