关于算法第四版环境配置

今天在测试算法第四版中第一个算法二分查找(BinarySearch)时,发现总是编译不成功(没有找到相应的静态方法),估计是没有成功导入包。

我是用了书网站提供的Hello World in Java on Windows直接安装形成的一个Java环境。

首先是在原书代码中要导入相应的静态方法

import edu.princeton.cs.algs4.In;
import edu.princeton.cs.algs4.StdIn;
import edu.princeton.cs.algs4.StdOut;

或添加整个包

import edu.princeton.cs.algs4.*;

其次,在编译时候要确保用javac-algs4 BinarySearch.java,运行时也要使用java-algs4 BinarySearch tinyW.txt < tinyT.txt。因为上面提供的环境中并没有引入CLASSPATH环境变量,如果直接采用javacjava就会导致找不到algs4.jar这个包。如果一定要用javacjava,那么就在环境变量中把algs4.jar的地址添加到CLASSPATH中,注销或重启后生效。

PS. 已过时API问题
书中源码中的int[] whitelist = In.readInts(args[0]);改成int[] whitelist = new In(args[0]).readAllInts();即可。这样的代码风格也更加符合Java一切皆对象的理念吧。

参考资料:

  1. 官网最新的代码,以及相应的解释。http://algs4.cs.princeton.edu/code/
  2. https://neue.v2ex.com/t/301773
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,054评论 6 342
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,929评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,369评论 19 139
  • 总结一下,用悲观的态度去看待遇到的挫折,会让人陷入失败而不可自拔,要停止消极的反刍来破解它,进一步激发出自己的能量...
    兽医博士在广西阅读 2,338评论 1 1
  • 1:简介单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统...
    噜噜丶阅读 1,852评论 0 0