IntelliJ IDEA 配置《算法》(第四版)

紅皮的算法一書,內部代碼的實現調用了做者寫的一個包。爲了運行書內代碼,須要配置相應的環境。java

準備

網站:https://algs4.cs.princeton.edu/code/算法

工具:IntelliJ IDEA 2019.3工具

Java版本:jdk8測試

Step 1

下載algs4.jar網站

Step 2

jar包移到某個目錄下,筆者此處放置在:"C:\Program Files\algs4\algs4.jar"命令行

Step 3

配置系統變量,在CLASSPATH後添加C:\Program Files\algs4\algs4.jar;注意最後的分號不能掉(如圖)。code

以後重啓電腦一次。blog

Step 4

配置IDEA,打開File--->Project Structure按照箭頭指示配置:get

Step 5

此時項目工程的目錄以下:it

測試所用的源代碼在一個目錄下此處是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:

相關文章
相關標籤/搜索