美文网首页
读书笔记《算法》 习题 1.2.1

读书笔记《算法》 习题 1.2.1

作者: 被江队泡的小茶饼 | 来源:发表于2018-01-26 12:37 被阅读0次
import java.util.Arrays;

import edu.princeton.cs.algs4.Point2D;
import edu.princeton.cs.algs4.StdDraw;
import edu.princeton.cs.algs4.StdOut;


/**
 * 从命令行接受一个整数N。
 * 在单位正方形内生成N个随机点,然后计算两点之间的最近距离。
 * @author lenovo
 *
 */
public class ShortDistance {

    public static void main(String[] args) {
        int N = Integer.parseInt(args[0]);
        Point2D[] p = new Point2D[N];
        
        //生成N个点
        for(int i = 0; i < N; i++) {
            double x = Math.random();
            double y = Math.random();
            p[i] = new Point2D(x,y);
            p[i].draw();
        }
        Arrays.sort(p);
        
        double minDistance = p[0].distanceTo(p[N-1]);
        int minIndex = N;
        
        //比较最小距离
        for(int i = 0; i < N-1; i++) {
            double min = p[i].distanceTo(p[i+1]);
            if(min < minDistance){
                minDistance = min;
                minIndex = i;
            }
        }
        
        StdDraw.setPenColor(StdDraw.RED);  
        //输出
        if(minDistance == N-1){
            p[N-1].drawTo(p[0]);
        }
        else{
            p[minIndex].drawTo(p[minIndex+1]);
        }
        StdOut.print("最小距离为" + minDistance);
        
    }
}

相关文章

  • 读书笔记《算法》 习题 1.2.1

  • 第一章 绪论

    本系列读书笔记参考自数据结构与算法经典问题解析第二版内容,习题答案部分有误,已勘正,部分严格证明参考算法导论第三版...

  • 算法习题

    4 递归与分治 选择问题 例4.9 查找第k个小/大元素 n个元素,元素划分n/5(不带余数),每组五个元素,不足...

  • 2018-11-11 算法练习题

    下面是几道算法练习题:

  • 程序设计练习题

    算法竞赛入门经典 习题1-1平均数 习题1-2温度 习题1-3 习题1-4 习题1-5 习题1-6 习题1-7 习...

  • 7月份之前的技术学习与计划

    读书计划 基础方面 算法:《算法》,《算法导论》,需要认真理解算法,并独立完成相关习题 语言:《JAVA编程思想》...

  • 算法练习(1):Java基本语法(1.1.1-1.1.7)

    本系列博客习题来自《算法(第四版)》,算是本人的读书笔记,如果有人在读这本书的,欢迎大家多多交流。为了方便讨论,本...

  • 算法练习(9):IDEA简易教程

    本系列博客习题来自《算法(第四版)》,算是本人的读书笔记,如果有人在读这本书的,欢迎大家多多交流。为了方便讨论,本...

  • 算法练习(11):等值键(1.1.29)

    本系列博客习题来自《算法(第四版)》,算是本人的读书笔记,如果有人在读这本书的,欢迎大家多多交流。为了方便讨论,本...

  • 算法练习(14):直方图(1.1.32)

    本系列博客习题来自《算法(第四版)》,算是本人的读书笔记,如果有人在读这本书的,欢迎大家多多交流。为了方便讨论,本...

网友评论

      本文标题:读书笔记《算法》 习题 1.2.1

      本文链接:https://www.haomeiwen.com/subject/gxkbaxtx.html