algorithm design
Algorithm Design
A palindrome is a sequence of units that has the property of reading the same in either direction (e.g., GCCG). Palindromes also occur in nucleotide acid sequences (e.g., DNA and RNA). To learn more about palindromes in DNAs and RNAs, please refer to the following web sites:
1. http://en.wikipedia.org/wiki/Palindrome
2. http://en.wikipedia.org/wiki/Palindromic_sequence
3. http://users.rcn.com/jkimball.ma.ultranet/BiologyPages/P/Palindromes.html
Due to mutations there could be some insertion of deletion which makes some palindromes not palindromes any more. For example, GCCACCG is a palindrome. Due to deletion, this sequence might be changed to CCACCG (“G” was deleted).
In this project, you are required to design an algorithm which takes an input string and return a palindrome by inserting the smallest number of letters. You are allowed to insert characters at any position of the string. For example, AAT can be turned into palindrome TAAT by one insertion T, and GCT into GCTCG with two insertions CG.
Besides designing an algorithm you also need to provide the time complexity analysis (e.g. big-O notation).
8 years ago
30
Purchase the answer to view it

- Source.cpp
- Paradox of Thrift
- the Roman Colosseum
- BIO 101 Week 1 Individual What Is Life
- Week 4 Learning Team Executive Summary
- ACC 490 Week 1 Generally Accepted Auditing Standards Paper
- SCI/201 SCI 201 SCI201 Week 2 Individual Assignment - Complementary Healing Therapies Chart - A+ paper from A+ rated tutor!
- Strayer FIN 540 Week 9 – Homework Chapter 29
- Strayer FIN 540 Week 6 – Homework Chapter 25 and 26
- Radical Masectomy Case Study
- Why are vision and mission statements important to strategic development?