Answered step by step
Verified Expert Solution
Question
1 Approved Answer
IN PYTHON Question 3 ( 1 0 marks ) You should be able to answer most of this question after you have attempted Question 1
IN PYTHON Question marks
You should be able to answer most of this question after you have attempted Question which requires study up to Chapter on Sequences and iteration and all of it after you have attempted Question which requires study up to Chapter on Dynamic programming
This question is quite openended but assesses some or all of the learning outcomes:
Develop and apply algorithms and data structures to solve computational problems.
Analyse the complexity of algorithms to support software design choices.
Explain how an algorithm or data structure works, in order to communicate with relevant stakeholders.
In comparing DNA sequences and sometimes other strings, it can be useful to allow slightly inexact matches. For example, DNA sequences that are essentially the same may differ in a small number of characters due to processes such as mutation, deletion or insertion.
In their simplest form these involve a change of one character a mutation involves a base ACG or T that changes to a different base eg 'ACTG' becomes 'ATTG' a deletion means one base is removed from the DNA sequence eg 'ACTG' becomes 'ATG' and an insertion means one additional base is added to the sequence at a particular point eg 'ACTG' becomes 'ACTCG'
Qa marks
Discuss in general terms whether and how it might be possible to adapt your 'bruteforce' algorithm from Question to allow for some limited effects of mutation, deletion or insertion in identifying longest common substrings, and whether this could be expected to have an impact on the performance. We do not expect you to write or modify any code for this question.
Write your answer here
Qb marks
Give one idea for how your dynamic programming solution to Question could be adapted for the same sort of inexact matching to allow for mutation only This could be a similar adaptation to what you proposed in Qa for the Question solution, or it might be different. In either case, explain why this is appropriate.
Very briefly explain any effect you would expect on the complexity or performance of the dynamic programming solution from your proposed adaptation
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started