目前,我正在学习多维数组,并负责分析.txt序列链(从一个文件中提供)。下面是一条链的例子:
AUGCUUAUUAACUGAAAACAUAUGGGUAGUCGAUGA
考虑到这条线,我要弄清楚RNA链会产生什么样的蛋白质。为了做到这一点,我将把每条链分解成密码子(3组)。所以举个例子,我需要看看AUG,CUU,AAC,UGA,等等,每个密码子代表一个氨基酸。因此,8月是蛋氨酸(用‘M’表示),CUU是亮氨酸(用‘L’表示)等等。因此,我的输出应该是一串新的氨基酸(M.)
解决这个问题最好的方法是什么?根据我的理解,我要创建一个三维数组,比方说
int aminoAcid[4][4][4]因为每个碱基有4种可能的选择(A,U,G,C)。不过,我不太确定该从哪里出发,因为某些组合会产生相同的氨基酸。
编辑:如果a首先将字符串转换为数字表示形式(A=0、U=1、G=2、C=3),我会朝正确的方向前进吗?从那时起,我可以更好地使用三维数组,对吗?
发布于 2015-08-10 23:47:18
您可以使用3d数组将氨基酸连接到不同的序列。您应该了解enum,并了解如何在数组索引中使用enum,以便您可以执行以下操作
aminoAcid['A']['U']['G'] = 24其中24也对应于蛋氨酸,这意味着你可以在那里使用另一个enum。每当您有一组有限的已知项要用数字表示时,请使用enums。
听起来这只是一个大型项目的开始,所以您应该从一开始就遵循良好的实践,考虑如何构建代表您的问题的组件。
https://stackoverflow.com/questions/31930877
复制相似问题