English 中文(简体)
图汉密尔顿博士途径DNA计算
原标题:Graph Hamiltonian Path with DNA Computing

我最近发现“DNA电子计算”Algorithm(不是基因规划或遗传算法),试图在图表中找到汉密尔顿的路径,但I m 略为混淆不清。 可查阅PDF关于DNA计算的文件:

Input: for each node v and edge (u; v),
  Tv contains Sv (and Sv)
  T0uv contains Suv (and Suv)
Mix(fTi; T0 uvg,T)
Remove(T,T0,fSfg)
Remove(T0,T0,fStg)
Move length 20n+10 strings from T0 to T00
if Detect(T0 )
then return ``Yes  
else return ``No  

http://people.ibest.uidaho.edu/~foster/Talks/dna-computing.pdf”rel=“nofollow noreferer” 。 有些人能否将其翻译成betterpseudo 代码? 我想尝试这一算法,但我拿不出他们与混合——和;驱逐——和特;然后移走Move(20n+10)。

P.S.这一算法是O(n^2),因此,怀疑它可能是一种类似于现有算法的版本。

最佳回答

在一些评论中,计算法意在测试管而不是硅。

Input: for each node v and edge (u; v),
  Tv contains Sv (and Sv)
  T0uv contains Suv (and Suv)

因此,我们先对图表中的每一分点进行测试,包括显示该分点的DNA碎片,并对图表中的每一对口进行测试。 代表 no子的DNA序列随机生成。 我们不希望他们能够相互做饭。 代表边缘的脱氧核糖核酸序列的设计使其与它们连接的底线相重叠。 哪一种意思是,如果与edge有关系的话,那么脱氧核糖核酸将贴上edge。 (这是使整个技术发挥作用的关键要点)。 脱氧核糖核酸的顺序需要扩大(既要有足够的脱氧核糖核酸,又要使脱氧核糖核酸的浓度与同一两端的对口数量成正比)。

Mix(fTi; T0 uvg,T)
Remove(T,T0,fSfg)
Remove(T0,T0,fStg)

Here we put all of the DNA sequences in a tube, and run the Polymerase Chain Reaction. In the PCR, we use primers which represent the start and end nodes for our Hamiltonian path. The result will be strings of DNA which begin with the Start node sequence, and then go edge-node-edge until the finish node is reached.

Move length 20n+10 strings from T0 to T00
if Detect(T0 )
then return ``Yes  
else return ``No  

然后,在“gel上将DNA引入,并用适当的长度摘取DNA序列。 这应当是汉密尔顿的道路。 对我来说,一个完全不明确的是,它们如何防止对vert子的重复访问,但认为这自然是出于上述正确浓度的原因。

令人感兴趣的理由是,化学基本上同时进行这些计算。 所有可能的道路都经过检查——因为所有DNA碎块的相容组合都是制造的——但PCR和gel只选择了代表汉密尔顿之路的道路。 而且,这是你在计算机上可以做的,没有时间。

问题回答

暂无回答




相关问题
How to add/merge several Big O s into one

If I have an algorithm which is comprised of (let s say) three sub-algorithms, all with different O() characteristics, e.g.: algorithm A: O(n) algorithm B: O(log(n)) algorithm C: O(n log(n)) How do ...

Grokking Timsort

There s a (relatively) new sort on the block called Timsort. It s been used as Python s list.sort, and is now going to be the new Array.sort in Java 7. There s some documentation and a tiny Wikipedia ...

Manually implementing high performance algorithms in .NET

As a learning experience I recently tried implementing Quicksort with 3 way partitioning in C#. Apart from needing to add an extra range check on the left/right variables before the recursive call, ...

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

Enumerating All Minimal Directed Cycles Of A Directed Graph

I have a directed graph and my problem is to enumerate all the minimal (cycles that cannot be constructed as the union of other cycles) directed cycles of this graph. This is different from what the ...

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签