冒泡排序(过程显示)

import  java.awt. * ;
import  java.applet. * ;

public   class  BubbleSort  extends  Applet  {
    
    Label prompt
=new Label("请输入欲排序的整数数据(最多10个): ");
    TextField input
=new TextField(5);
    Button sortbtn
=new Button("排序");
    
int[]  DataArray=new int[10];
    
int DataInputed=0;
    
int[][] SortPro=new int[11][10];
    
    
public void init()
    
{
        add(prompt);add(input);add(sortbtn);
    }
 
    
public void paint(Graphics g){
        
        
for(int i=0;i<SortPro.length;i++)
        
for(int j=0;j<SortPro[i].length;j++)
        g.drawString(Integer.toString(SortPro[i][j]),
10+30*j,40+20*i);
    }

    
    
    
public boolean action(Event e,Object o){
        
if(e.target==input){
            DataArray[DataInputed
++]=Integer.parseInt(input.getText());
            
if(DataInputed<10){
                prompt.setText(
"已输入"+DataInputed+"个数据,请继续");
                input.setText(
"");
            }

            
else
            
{prompt.setText("已输入10个数据,不能再输入了");
            input.hide();        
            }

        }

        
if(e.target==sortbtn)
        
{for(int i=0;i<DataArray.length;i++)
        SortPro[
0][i]=DataArray[i];
        SortProcedure();
        repaint();
        }

        
return true;
        }

        
void SortProcedure(){
        
int pass,i,temp,exchangeCnt;
        
for(pass=0;pass<DataArray.length;pass++)
        
{
            exchangeCnt
=0;
            
for(i=0;i<DataArray.length-pass-1;i++)
    
{    if(DataArray[i]>DataArray[i+1])
        
{temp=DataArray[i];
        DataArray[i]
=DataArray[i+1];
        DataArray[i
+1]=temp;
        exchangeCnt
++;
        }

        }

        
for(i=0;i<DataArray.length;i++)
        SortPro[pass
+1][i]=DataArray[i];
        
if(exchangeCnt==0)
        
return
        }

        }

        }

        
        
        
185289.html

沉默奔跑者 2008-03-11 11:08 发表评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值