Java-POJ1007-DNA Sorting

题目大意:

  你的任务是分类DNA字符串(只有ACGT四个字符,所有字符串长度相同)。

  根据逆序数,排序程度从好到差。

第一次用到了“类”,和c++里的结构体有类似之处

一次AC,简单暴力的冒泡排序,要不下次来个并归排序?

 1 import java.util.Scanner;
 2 
 3 public class poj1007 {
 4     public static class Data{
 5         String s="";
 6         int num=0;
 7         Data(){}
 8     }
 9     public static void main(String[] args) {
10         Scanner cin=new Scanner(System.in);
11         int L=cin.nextInt();
12         int n=cin.nextInt();
13         Data s[]=new Data[200];
14         for(int i=1;i<=n;i++){
15             s[i]=new Data();//必须先新建一下,不然会指向空
16             s[i].s=cin.next();
17         }
18 
19         for(int i=1;i<=n;i++){
20             for(int j=0;j<L;j++)
21                 for(int k=j+1;k<L;k++)
22                     if(s[i].s.charAt(j)>s[i].s.charAt(k))
23                         s[i].num++;
24         }
25         for(int i=1;i<=n;i++)
26             for(int j=i+1;j<=n;j++){
27                 if(s[i].num>s[j].num) {
28                     Data c=s[i];
29                     s[i]=s[j];
30                     s[j]=c;
31                 }
32             }
33         for(int i=1;i<=n;i++) System.out.println(s[i].s);
34     }
35 }

猜你喜欢

转载自www.cnblogs.com/JasonCow/p/12236421.html