数组挑选排序及其动画表示
众所周知,数组对于我们存放数据有着莫大的帮助,而在数组中,我们经常需要对其进行排序操作,今天,我们就一维数组的挑选排序方式对大家进行演示。
首先,挑选排序,其基本逻辑就是,第一轮中,选定数组第一个数,然后让它与其后面的每一个数进行比较,如果第一个数大于其比较的数,那就互换数据,第二轮就选定第二个数开始,第三轮就选定第三个,以此类推,我们就可以完成对数组的排序。
当然,我们老师的要求还有,用动画的方式,将排序过程表示出来。。。。(这难度突然增加)
总之既然需要给数组排序,我们就需要先创建一个数组并给其赋值,然后需要动画,我们就需要一个窗口来绘图。
所以,我们先把这些东西准备好
package array1109;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JFrame;
public class arrayyry1 {
//选择排序(完成
int[] arr = new int[10];
public void getarray(){
Random ra = new Random();
for(int i=0;i<arr.length;i++ ){
arr[i]=ra.nextInt(30)+1;//给数组赋值
}
}
public static void main(String[] args) {
arrayyry1 a = new arrayyry1();
JFrame ui=new JFrame();
ui.setSize(900,900);
ui.setLocationRelativeTo(null);
ui.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ui.setLayout(new FlowLayout());
JButton bt =new JButton("画图");
JButton bt1 =new JButton("开始");
ui.add(bt);
ui.add(bt1);
ui.setVisible(true);
a.getarray();
bt.addActionListener();
bt1.addActionListener();
}
这里,我们用方法为数组arr附了值,并且创建了一个窗口,并加上了两个按钮,接下来,我们就只需要为这两个按钮加入监听器,然后操作监听器就可以了。
所以,我们先为“画图”按钮写入监听器
//按下“画图”画出根据数组而来的图形
bt.addActionListener