百炼OJ - 1007 - DNA排序 目录 题目链接:http://bailian.openjudge.cn/practice/1007回到顶部 题目链接:http://bailian.openjudge.cn/practice/1007#include<stdio.h> #include<algorithm> using namespace std; typedef struct number{ char s[51]; int...
poj1007-DNA Sorting(排序) 一,题意: 输入N个字符串,按照字符串的逆序数由最少到最大开始输出。 注意:如果逆序数相同,就原来顺序输出。 二,思路步骤: 1,输入,并用a[]存储每行字符串的逆序数; 2,冒泡排序a[]的同时换掉str[][]的顺序; 3,输出。 View Code 版权声明:本文为博主原创文章,未经博主允许不...
sum > dna[j].sum; --j) //每次的子列都是有序的,判断条件可写在for(内),否则不可(这么做减少运行次数) //每次和有序数组最后一个比较,向前搜索,直到找到位置停止 { swapDNA(&dna[j-1], &dna[j]); } } for (i = 0; i != m; ++i) //输出排序后的dna序列 { for(j = 0; j != ...
poj 1007:DNA Sorting(水题,字符串逆序数排序) DNA Sorting Description One measure of ``unsortedness'' in a sequence is the number of pairs of entries that are out of order with respect to each other. For instance, in the letter sequence ``DAABEC'', this measure is 5, since D is grea...
POJ 1007 DNA排序求逆序数 基本思路就是求逆序数然后根据逆序数排序,出现的问题有: 1、这题出现的问题主要是对m和n总是搞混,而且提交出现了Runtime Error,这个错误一般都是由于一般都是非法访问内存(数组越界、访问空指针、堆栈溢出)、做除法时除以了0 等造成的,后来仔细看了一下“a positive integer n (0 ...
POJ1007 DNA Sorting 排序 C语言 题目:http://poj.org/problem?id=1007 题目大意:给出一段DNA序列,按照有序程度降低的顺序输出,也就是以逆序对数增加的顺序输出 思路:记录A、C、G、T出现的次数,每输入一个字符,它出现的个数加1;如果输入A,逆序数加上已出现的C、G、T个数,输入C,逆序数加上已出现的G、...
for(i=0;i<m;i++)//这也是一种很好的做排序的方法 { b[i]=0; t=a[0]; for(j=1;j<m;j++) if(t>a[j]) { t=a[j]; b[i]=j; } a[b[i]]=1250;//如果遍历过这个数字了,那么就给赋一个很大的值,这样使得接下来排序成为可能 ...
问题链接:POJ1007 DNA Sorting 问题简述:(略) 问题分析: 这个一个排序问题,需要先算一下每个字符串的逆序数,根据逆序数进行排序。算逆序数采用暴力法进行计算。 若干个相同的题目,输入和输出格式略有不同,代码都分别给出来了! 程序说明:(略) 参考链接:(略) ...
DNA*bb = (DNA *)b;returnaa->count-bb->count; }intmain() {intn,m;charc; cin>>n>>m;for(inti =0; i < m; i++) { cin>>dna[i].dna; dna[i].count=0;for(intj =0; j < n; j++)for(intk = j+1; k < n; k++) ...