IntelliJ IDEA 配置《算法》(第四版)
红皮的算法一书,内部代码的实现调用了作者写的一个包。为了运行书内代码,需要配置相应的环境。
准备
网站:https://algs4.cs.princeton.edu/code/
工具:IntelliJ IDEA 2019.3
Java版本:jdk8
Step 0
下载algs4.jar

Step 2
将jar包移到某个目录下,笔者此处放置在:"C:\Program Files\algs4\algs4.jar"
Step 3
配置系统变量,在CLASSPATH后添加C:\Program Files\algs4\algs4.jar;注意最后的分号不能掉(如图)。

之后重启电脑一次。
Step 4
配置IDEA,打开File--->Project Structure按照箭头指示配置:

Step 5
此时项目工程的目录如下:

测试所用的源代码在一个目录下此处是Chapter1下.测试所用的数据在src中与Chapter1并列,
测试所用代码如下:
package Chapter1;
import edu.princeton.cs.algs4.In;
import edu.princeton.cs.algs4.StdIn;
import edu.princeton.cs.algs4.StdOut;
import java.util.Arrays;
/**
* Created by Elio Yang on 2020/6/28.
*/
public class binarySearchTest {
public static int rank(int key,int[] a){
int lo=0;
int hi=a.length-1;
while (lo<=hi){
int mid=lo+(hi-lo)/2;
if(key<a[mid]) hi=mid-1;
else if(key>a[mid]) lo=mid+1;
else return mid;
}
return -1;
}
public static void main(String[] args) {
int[] arraylist= new In(args[0]).readAllInts();
Arrays.sort(arraylist);
while (!StdIn.isEmpty()){
int key=StdIn.readInt();
if (rank(key,arraylist)==-1)
StdOut.println(key);
}
}
}
Step 6
编译+运行
方法1: Terminal
方法如下图所示:一定要注意文件的位置

C:\Users\ELIO\source\Algorithms_4E\src>javac Chapter1\binarySearchTest.java
javac编译出了一个.class文件
C:\Users\ELIO\source\Algorithms_4E\src>java Chapter1.binarySearchTest tinyW.txt < tinyT.txt
java运行时,利用文件重定向需要注意数据文件所属的目录,此处的两个.txt都是位于src下,与命令行的一致,故只需要文件名即可.
方法2: Edit Configurations
在IDEA运行的地方,找到如下按钮:

点击Edit:

IntelliJ IDEA 配置《算法》(第四版)的更多相关文章
- 算法第四版 在Eclipse中调用Algs4库
首先下载Eclipse,我选择的是Eclipse IDE for Java Developers64位版本,下载下来之后解压缩到喜欢的位置然后双击Eclipse.exe启动 然后开始新建项目,File ...
- 算法第四版jar包下载地址
算法第四版jar包下载地址:https://algs4.cs.princeton.edu/code/
- 算法第四版-文字版-下载地址-Robert Sedgewick
下载地址:https://download.csdn.net/download/moshenglv/10777447 算法第四版,文字版,可复制,方便copy代码 目录: 第1章 基 础 ...... ...
- 二项分布。计算binomial(100,50,0.25)将会产生的递归调用次数(算法第四版1.1.27)
算法第四版35页问题1.1.27,估计用一下代码计算binomial(100,50,0.25)将会产生的递归调用次数: public static double binomial(int n,int ...
- 算法第四版学习笔记之优先队列--Priority Queues
软件:DrJava 参考书:算法(第四版) 章节:2.4优先队列(以下截图是算法配套视频所讲内容截图) 1:API 与初级实现 2:堆得定义 3:堆排序 4:事件驱动的仿真 优先队列最重要的操作就是删 ...
- 算法第四版学习笔记之快速排序 QuickSort
软件:DrJava 参考书:算法(第四版) 章节:2.3快速排序(以下截图是算法配套视频所讲内容截图) 1:快速排序 2:
- 配置《算法 第四版》的Eclipse开发环境
1. 安装JAVA JAVA网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html 配置环境变量(我把JAVA安装在 ...
- 算法第四版 coursera公开课 普林斯顿算法 ⅠⅡ部分 Robert Sedgewick主讲《Algorithms》
这是我在网上找到的资源,下载之后上传到我的百度网盘了. 包含两部分:1:算法视频的种子 2:字幕 下载之后,请用迅雷播放器打开,因为迅雷可以直接在线搜索字幕. 如果以下链接失效,请在下边留言,我再更新 ...
- 在Windows上安装「算法 第四版」组件
这篇文档将向你介绍如何在Windows系统上安装本书将用到的Java开发环境,同时我们也提供了一个手把手的.使用我们提供的DrJava工具或者用命令行来创建.编译和运行你的第一个Java程序的手册,这 ...
- 相似度分析,循环读入文件(加入了HanLP,算法第四版的库)
相似度分析的,其中的分词可以采用HanLP即可: http://www.open-open.com/lib/view/open1421978002609.htm /****************** ...
随机推荐
- 教你如何使用github+jsDelivr搭建免费图床
前言 之前写了一篇文章,教你如何使用Typora+PicGo实现图片自动上传到图床 . 这里我用的是七牛图床,七牛图床有一定的免费使用量(没记错的话应该是10个G),如果你的存储量超过这个大小就需要付 ...
- CodeForces 1408I Bitwise Magic
题意 给定三个整数 \(n,k,c\) 和一个长度为 \(n\) 的序列 \(a\),保证 \(a_i\) 互不相同.可以操作 \(k\) 次,每次随机选择一个 \(a_i\) 变成 \(a_i-1\ ...
- NB-IoT技术适合在哪些场景应用
LPWAN,Low Power Wide Area Network,低功耗广域网.名字里就有它的两个最重要的特点:低功耗.广覆盖.目前比较主流的有:NB-IoT.LoRa.Sigfox.eMTC.NB ...
- bat批处理常用脚本
windows下有很多场景需要编写批处理来解决问题,跟定时任务相结合使用更佳. 1.创建文件,md,mkdir都可以进行文件创建 set AwrPath=D:\OracleTabChk if not ...
- Linux使用tmux
Tmux功能: 提供了强劲的.易于使用的命令行界面.可横向和纵向分割窗口.窗格可以自由移动和调整大小,或直接利用四个预设布局之一.支持 UTF-8 编码及 256 色终端.可在多个缓冲区进行复制和粘贴 ...
- Odoo环境搭建之问题readme
环境及工具 Windows,PyCharm Community Edition,postgresql-13.0-1 启动odoo环境 python odoo-bin 如果你只是还是空壳,启动odoo之 ...
- php 实现签名验签
本人php菜鸟,主要使用php实现简单的签名验签功能 以下php代码使用的密钥格式为pem格式,其他证书格式可以使用openssl进行转换(未安装请实现安装): 以下是.p12文件导出pem格式公私钥 ...
- 【SpringBoot】11.Springboot整合SpringMVC+Mybatis(上)
Springboot整合SpringMVC+Mybatis 需求分析:通过使用Springboot+SpringMVC+Mybatis 整合实现一个对数据库表users表的CRUD操作. 1.创建项目 ...
- Flink的sink实战之三:cassandra3
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- python0why study python
Python 越来越火爆 Python 在诞生之初,因为其功能不好,运转功率低,不支持多核,根本没有并发性可言,在计算功能不那么好的年代,一直没有火爆起来,甚至很多人根本不知道有这门语言. 随着时代的 ...