LYUHE
LYUHE (学号:67)
等级:LV1 经验值:214

爱编程,更爱w3cschool!

TA的能力评估:37分

TA的书签

暂时没有书签

TA的提问

9
回答

PHP 生成JSON如何不做unioncode编码转换比如在json 里面 $a = ['name'=>'张三','age'=>20];在json_encode后 '张三'会变成 '/u97asfddd/' 这样的编码,如何能使'张三'不转换成 '/u/'这样的编码呢?

查看详情
2016-10-21 04:02:54 浏览(5727)
5
回答

我现在有两个字符串数组,姑且称为candidates和bg_db,全部都是长度为20的短字符串,并且每个字符串的每个字符只有ATCG四种可能(没错!就是基因组序列啦!):

candidates = [
    'GGGAGCAGGCAAGGACTCTG',
    'GCTCGGGCTTGTCCACAGGA',
    '...',
    # 被你看出来啦,这些其实人类基因的片段
]

bg_db = [
    'CTGCTGACGGGTGACACCCA',
    'AGGAACTGGTGCTTGATGGC',
    '...',
    # 这个更多,有十亿左右
]

我的任务是对candidates的每一个candidate,找到bg_db中所有与其小于等于4个差异的记录,举个例子来说:

# 上面一条为candidate,即candidates的一个记录
# 中间|代表相同,<em>代表不相同
# 下面一条代表bg_db的一条记录

A T C G A T C G A T C G A T C G A T C G
| | | | | | | | | | | | | | | | | | | |    # 差异为0
A T C G A T C G A T C G A T C G A T C G

A T C G A T C G A T C G A T C G A T C G
</em> | | | | | | | | | | | | | | | | | | |    # 差异为1
T T C G A T C G A T C G A T C G A T C G

A T C G A T C G A T C G A T C G A T C G
<em> | | | </em> | | | | | | | | | | | | | | |    # 差异为2
T T C G T T C G A T C G A T C G A T C G

A T C G A T C G A T C G A T C G A T C G
<em> | | | </em> | | | | | | <em> | | | | | | | |    # 差异为3
T T C G T T C G A T C C A T C G A T C G

A T C G A T C G A T C G A T C G A T C G
</em> | | | <em> | | | | | | </em> | | | <em> | | | |    # 差异为4
T T C G T T C G A T C C A T C A A T C G
</em>

我的问题是如果快速地找到:每一个candidate在bg_db中与之差异小于等于4的所有记录,如果采用暴力遍历的话,以Python为例:


def align(candidate, record_from_bg_db):mismatches = 0for i in range(20):if candidate[i] != record_from_bg_db[i]:mismatches += 1if mismatches >= 4:return Falsereturn True 

candidate = 'GGGAGCAGGCAAGGACTCTG'record_from_bg_db = 'CTGCTGACGGGTGACACCCA' 

align(candidate, record_from_bg_db) # 1.24微秒左右 

# 总时间: 

10000000 1000000000 * 1.24 / 1000 / 1000 / 60 / 60 / 24 / 365 

# = 393 

# 1千万个candidates,10亿条bg_db记录 

# 耗时大约393年 

# 完全无法忍受啊

我的想法是,bg_db是高度有序的字符串(长度固定,每个字符的可能只有四种),有没有什么算法,可以让candidate快速比较完所有的bg_db,各位大神,求赐教。

查看详情
2016-10-21 03:25:26 浏览(3268)
4
回答

如何理解IoC(Inversion of Control)?如果能写个demo解释最好了。

查看详情
2016-10-21 03:21:18 浏览(1388)
5
回答

现在项目的根目录放了 .gitignore 文件,并且git远程仓库的项目根目录已经有了 logs文件夹。
由于每次本地运行项目,都会生成新的log文件,但是我并不想提交logs文件夹里面的内容,所以要在.gitignore写logs的规则。
我尝试过添加以下规则
logs/*.log
logs/
/logs/
但是运行git status的时候,始终能看到modified:logs/xx.log 。
请问是我的规则编写错误,还是我某个地方有理解错误?

查看详情
2016-10-21 03:07:44 浏览(1539)

TA的回答

1
赞同

1.将查出来的数据封装到list里,传到前台 使用jstl中的循环语句遍历

2.将option标签中的值存放到input,提交到后台查询即可

查看详情
2016-10-21 03:11:06 回复(0)
二维码
建议反馈
二维码