• 大小: 14KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-06
  • 语言: 其他
  • 标签: 分治法  随机数  

资源简介

可以随机产生n个点,也可以鼠标点击屏幕输入点。根据所有点,用分治法和蛮力法计算最近点对,并且比较各自所消耗的代价。

资源截图

代码片段和文件信息

package com.mainframe;

import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import javax.swing.*;

import com.point.NearPoint;
import com.point.Point;
import com.util.algorithm.ShortestPath;
import com.util.algorithm.QSort;

public class Mainframe extends Jframe implements MouseListener
MouseMotionListener ActionListener {

/**
 * Thank you for your interest in the source code of this page.:) jp1:
 * 画点的panel(BorderLayout中间) jp2: BorderLayout下方
 */
private JPanel jp1 jp2 jp3 jp4 jp5jp6;

private JButton cal;

private JButton generate_random;

private JButton clear;
private Checkbox auto_generate;
private Checkbox manual;

private JTextField res1 res2 res3;

private JTextField random_number;

private JLabel random;

private boolean isAutoGenerate;

/**
 * MouseX:鼠标点击的X坐标 MouseY:鼠标点击的Y坐标 Xcoord_Pointarr:存放所有的点坐标以X方向排序
 * Ycoord_Pointarr:存放所有的点坐标以Y方向排序(实际算法中,index标识X的次序)
 */
private int MouseX;

private int MouseY;

private ArrayList Xcoord_Pointarr;

private ArrayList Ycoord_Pointarr;

public Mainframe() {
/**
 * 初始化和界面
 */
jp1 = new JPanel();
jp1.setBackground(Color.WHITE);
// jp1.setSize(this.WIDTH this.HEIGHT/3*2);
this.jp1.addMouseListener(this);
this.jp1.addMouseMotionListener(this);

jp2 = new JPanel();
// jp2.setSize(this.WIDTH this.HEIGHT/3);
// jp2.setLayout(new BorderLayout());
jp2.setLayout(new FlowLayout());
jp3 = new JPanel();
jp3.setLayout(new BorderLayout());
jp4 = new JPanel();
jp4.setLayout(new BorderLayout());
jp5 = new JPanel();
jp5.setLayout(new BorderLayout());
jp6 = new JPanel();
jp6.setLayout(new BorderLayout());

cal = new JButton(“Line the closest pair of points“);
cal.addActionListener(this);
clear = new JButton(“Clear all the points“);
clear.addActionListener(this);
res1 = new JTextField(25);
res2 = new JTextField(25);
res3 = new JTextField(25);
random = new JLabel(“Input random number:“);
random_number = new JTextField(5);
generate_random = new JButton(“Generate random points.“);
generate_random.addActionListener(this);

CheckboxGroup g = new CheckboxGroup();
auto_generate = new Checkbox(“1. Auto generate points.“ g false);
      manual = new Checkbox(“2. Enter points by mouse.“ g true);


jp3.add(random BorderLayout.NORTH);
jp3.add(random_number BorderLayout.CENTER);
jp3.add(generate_random BorderLayout.SOUTH);
jp4.add(res1 BorderLayout.NORTH);
jp4.add(res2 BorderLayout.CENTER);
jp4.add(res3 BorderLayout.SOUTH);
jp5.add(cal BorderLayout.NORTH);
jp5.add(clear BorderLayout.SOUTH);
jp6.add(auto_generate BorderLayout.NORTH);
jp6.add(manual BorderLayout.SOUTH);

// jp2.add(jp3 BorderLayout.WEST);
// jp2.add(jp4 BorderLayout.CENTER);
// jp2.add(jp5 BorderLayout.EAST);
jp2.add(jp6);
jp2.add(jp3);
jp2.add(jp4);
jp2.add(jp5);

    t

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        226  2009-10-06 01:12  NearestPoint\.classpath

     文件        388  2009-10-06 01:12  NearestPoint\.project

     文件       7928  2009-10-06 19:33  NearestPoint\com\mainframe\Mainframe.class

     文件       8836  2009-10-06 19:33  NearestPoint\com\mainframe\Mainframe.java

     文件       1124  2009-10-06 13:22  NearestPoint\com\point\NearPoint.class

     文件        788  2007-09-29 19:48  NearestPoint\com\point\NearPoint.java

     文件       1086  2009-10-06 13:22  NearestPoint\com\point\Point.class

     文件        856  2007-09-29 19:48  NearestPoint\com\point\Point.java

     文件       1688  2009-10-06 14:25  NearestPoint\com\util\algorithm\QSort.class

     文件       2316  2009-10-06 14:25  NearestPoint\com\util\algorithm\QSort.java

     文件       2921  2009-10-11 16:11  NearestPoint\com\util\algorithm\ShortestPath.class

     文件       4057  2009-10-11 16:11  NearestPoint\com\util\algorithm\ShortestPath.java

     目录          0  2009-10-06 19:47  NearestPoint\com\util\algorithm

     目录          0  2009-10-06 13:22  NearestPoint\com\mainframe

     目录          0  2009-10-06 13:22  NearestPoint\com\point

     目录          0  2009-10-06 10:12  NearestPoint\com\util

     目录          0  2009-10-06 12:31  NearestPoint\com

     目录          0  2009-10-06 10:12  NearestPoint

----------- ---------  ---------- -----  ----

                32214                    18


评论

共有 条评论