POJ 1007 Java:DNA Sorting
来源:互联网 发布:人工智能的电影 编辑:程序博客网 时间:2024/05/29 09:25
题目描述:大意是给出一些相同长度的字符串,根据这些字符串的逆序数进行排序,输出。
分析:定义一个DNA类,其中包含字符串和该字符串的逆序数两个成员变量,和相关成员函数。对给定的字符串排序,再输出。
AC代码:
import java.util.*;public class POJ1007 {public static void main(String[] args){Scanner s = new Scanner(System.in);int length = s.nextInt();int num = s.nextInt();DNA[] dna = new DNA[num];s.nextLine();//用于跳过换行符for(int i=0; i<num; i++){dna[i] = new DNA(s.nextLine());}sort(dna);for(int i=0; i<num; i++){System.out.println(dna[i].str);}s.close();}//排序public static void sort(DNA[] dna){DNA tmp = new DNA();for(int i=0; i<dna.length; i++){for(int j=1; j<dna.length-i; j++){if(dna[j-1].compare(dna[j])){tmp.set(dna[j]);dna[j].set(dna[j-1]);dna[j-1].set(tmp);}}}}}class DNA{String str;int inversion = 0;DNA(){this.str = null;}DNA(String str){this.str = str;//计算出每个DNA的逆序数count();}public void count(){char ch[] = str.toCharArray();for(int i=0; i<str.length(); i++){for(int j=i+1; j<str.length(); j++){if(ch[i] > ch[j])inversion++;}}}public boolean compare(DNA dna){if(this.inversion >= dna.inversion){return true;}else return false;}public void set(DNA d){this.str = d.str;this.inversion = d.inversion;}}
0 0
- POJ 1007 Java:DNA Sorting
- POJ 1007 DNA Sorting [解题报告] Java
- POJ 1007 DNA Sorting
- poj 1007 DNA Sorting
- POJ 1007 DNA Sorting
- POJ-1007 DNA Sorting
- 【POJ】1007 DNA Sorting
- POJ-1007:DNA Sorting
- poj 1007 DNA Sorting
- POJ 1007 DNA Sorting
- POJ 1007 DNA Sorting
- poj 1007 DNA Sorting
- POJ 1007 DNA Sorting
- 【POJ】1007 DNA Sorting
- poj 1007 DNA sorting
- POJ 1007 DNA Sorting
- poj 1007 DNA Sorting
- [POJ][1007]DNA Sorting
- flask_sqlalchemy和SQL遇到的一个查询
- 答题游戏项目2
- 互联网企业需要加强道德自律
- ThreadLocal详解
- canvas记录
- POJ 1007 Java:DNA Sorting
- Android使用LruCache,DiskLruCache结合线程池打造类似(ImageLoader)图片加载器
- OJ 系列之整型字符串排序
- windows 批处理自学教程 基础篇
- 从最大似然到EM算法浅解
- Hive的安装以及基本的shell操作以及基本模型的介绍
- Latest CLM fixes for 2015
- 基于八叉树的区域增长点云分割算法
- storm安装部署