Java语言:冒泡排序和直接插入算法
Java语言:冒泡排序和直接插入算法
一共三个类,分别为冒泡排序类,直接插入排序类和最后的测试类
异常就没写了
冒泡排序 结果如下
- public class InsertMaoPao {
- public void insertMao(int []data){
- try{
- for(int i=0;i<data.length;i++){
- for(int j=0;j<data.length-1;j++){
- if(data[j]>data[j+1]){
- int temp=data[j];
- data[j]=data[j+1];
- data[j+1]=temp;
- }
- }
- }}
- catch(Exception e){
- System.out.println("索引出错");
- e.printStackTrace();
- }
- System.out.print("冒泡排序:");
- for(int x:data){
- System.out.print(x+" ");
- }
- }
- }
- 、、、、、、、、、、、
- package cn.paixu;
- public class InsertData {
- public void insertDa(int []data){
- for(int i=1;i<data.length;i++){
- int temp=data[i];//第一步取插入的数
- //判断插入的值与它插入位置的前一位进行比较,如果比前一位大,就不用变更位置,如果小于则下面
- if(temp<data[i-1]){
- int j=i-1;
- for(;j>=0&&data[j]>temp;j--){
- data[j+1]=data[j];//比较后交换
- }
- data[j+1]=temp;
- }
- //插入数值小于前面的数值,依次比较
- }
- System.out.print("插入排序:");
- for(int x:data){
- System.out.print(x+" ");
- }
- }
- }
、、、、、、、、、、、、、、、、测试类、、、、、、、、、、、、
- package cn.paixu;
- import java.util.Scanner;
- public class TestData {
- public void getData() {
- int count = 0;
- System.out.println("请依次输入您所需要排列的数值 以空格分隔例如:5 8 9 ...");
- System.out.print("输入数值为:");
- Scanner input = new Scanner(System.in);
- String s = input.nextLine();
- String [] str=s.split(" ");
- count=str.length;
- int data[]=new int[count];
- for(int i=0;i<count;i++){
- data[i]=Integer.parseInt(str[i]);
- }
- // for (int i = 0; i < s.length(); i++) {
- // char c = s.charAt(i);
- // if (c >= '0' && c <= '9')
- // count++;
- // }
- //System.out.println(count);
- }
- public static void main(String[] args) {
- //
- int count = 0;
- System.out.println("请依次输入您所需要排列的数值 以空格分隔例如:5 8 9 ...");
- System.out.print("输入数值为:");
- Scanner input = new Scanner(System.in);
- String s = input.nextLine();
- String [] str=s.split(" ");
- count=str.length;
- int data[]=new int[count];
- for(int i=0;i<count;i++){
- data[i]=Integer.parseInt(str[i]);
- }
- // TODO Auto-generated method stub
- InsertData insetda=new InsertData();
- insetda.insertDa(data);
- InsertMaoPao im=new InsertMaoPao();
- im.insertMao(data);
- }
- }
评论暂时关闭