您的位置:首页
一个简单的排序问题
2017-05-01 09:18
190 查看
1.首先定义一个接口
2.分别定义两个接口实现类,一个增序。一个减序
增序:
降序:
3.最后写一个排序的方法
4.測试结果
1234554321
package temp.test; public interface IntCompare { public int compare(int a, int b); }
2.分别定义两个接口实现类,一个增序。一个减序
增序:
package temp.test; public class IncreaseOrder implements IntCompare{ @Override public int compare(int a, int b) { // TODO Auto-generated method stub if(a>b){ return -1; }else if(a<b){ return 1; }else{ return 0; } } }
降序:
package temp.test; public class DecreaseOrder implements IntCompare{ @Override public int compare(int a, int b) { // TODO Auto-generated method stub if(a>b){ return 1; }else if(a<b){ return -1; }else{ return 0; } } }
3.最后写一个排序的方法
package temp.test; public class SortNumber { public static void sortNumber(int array[],IntCompare compare){ if(array!=null){ for(int i=1;i<array.length;i++){ int temp=array[i]; int j=i; if(compare.compare(array[j-1], temp)==-1){ while(j>=1&&compare.compare(array[j-1], temp)==-1){ array[j]=array[j-1]; j--; } } array[j]=temp; } } } public static void main(String args[]){ int array1[]={1,2,3,4,5}; int array2[]={1,2,3,4,5}; sortNumber(array1, new IncreaseOrder()); for(int item:array1){ System.out.print(item); } sortNumber(array2, new DecreaseOrder()); for(int item:array2){ System.out.print(item); } } }
4.測试结果
1234554321
相关文章推荐
- 一个简单的排序问题
- ~~把我搞晕了!一个简单的C#语法问题
- 工作当中日期排序的一个问题
- 一个简单的怪问题
- 使用一个简单的webframe来解决EAI和分工合作问题
- 一个数独问题的算法(已更新,提供一个简单算法,欢迎拍砖)
- 今天的问题:一个简单的例子,请帮我解开“接口实现Java‘隐藏实现细目’”的迷惑。
- 今天调试一个WebPart的简单程序出现的问题
- 一个简单的怪问题
- 一个简单的怪问题
- 一个简单的移植性的问题
- 触发器(当2个表中的相应值改变时同时改变一个表中的一个字段)(同时有处理“无法解决 equal to 操作的排序规则冲突”问题)
- 今天在国外论坛上为别人解决一个简单问题
- 数据结构中关于链表的一个简单问题
- 一个简单的怪问题
- 学习ejb并配置一个简单的helloEjb是遇到问题后总结的经验。
- 排序出现的一个奇怪的问题,找出原因后差点吐血
- 一个简单的初始化问题
- 一个简单的问题
- 今天调试一个WebPart的简单程序出现的问题