Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Computational Biology Exam 1: Algorithms and Data Structures, Exams of Computational Biology

An overview of various algorithms and data structures used in computational biology, including exhaustive, greedy, recursion, dynamic programming, randomization, and heuristic algorithms, as well as hash tables, arrays, suffix tries, and search trees. Learn about their characteristics, advantages, and applications.

Typology: Exams

2020/2021

Available from 03/13/2024

EmmaMoss
EmmaMoss 🇬🇧

100 documents

1 / 2

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Computational Biology exam 1
Exhaustive algorithm
accurate, A LOT of time and memory
looks at every possibility
greedy algorithm
follows problem solving heuristic of making optimal choices at each stage. Hopefully
finds the global optimum.
not as thorough, uses shortcut
recursion
calls itself
Dynamic Programming
break problem into sub problems
ex. NW, SW, BLAST
Randomization
uses random number to make decision
stochastic
randomness affects either runtime or output
heuristic
decision may not be optimal but is fast enough or close enough to optimal
greedy algorithm
exact vs approximate
BLAST = approximiate
deterministic vs stochastic
Deterministic - same decision at every step, always same output given input
Stochastic - depends on random but informed choices, can have different results from
different runs
NW
global, exhaustive, pairwise
SW
local exhaustive pairwise
pf2

Partial preview of the text

Download Computational Biology Exam 1: Algorithms and Data Structures and more Exams Computational Biology in PDF only on Docsity!

Computational Biology exam 1

Exhaustive algorithm accurate, A LOT of time and memory looks at every possibility greedy algorithm follows problem solving heuristic of making optimal choices at each stage. Hopefully finds the global optimum. not as thorough, uses shortcut recursion calls itself Dynamic Programming break problem into sub problems ex. NW, SW, BLAST Randomization uses random number to make decision stochastic randomness affects either runtime or output heuristic decision may not be optimal but is fast enough or close enough to optimal greedy algorithm exact vs approximate BLAST = approximiate deterministic vs stochastic Deterministic - same decision at every step, always same output given input Stochastic - depends on random but informed choices, can have different results from different runs NW global, exhaustive, pairwise SW local exhaustive pairwise

Computational Biology exam 1

BLAST

local, approximate, pairwise CLUSTALW global, approximate, multiple BOWTIE approximate, pairwise Hash table fixed length, fast Creating hashtable: time O(n), memory O(n) Searching hash table: time O(1), memory O(n) array Linear search, slow, errors Time O(n) Memory O(n) suffix trie time O(n) memory Search tree Memory, variable length, fast Used to store strings over an alphabet, nodes and leaves Hash memory