win7系統《算法》第四版 IDEA 運行環境的搭建運行BinarySearch.java

對於紅寶書算法第四版,基於Windows 7系統使用IntelliJ IDEA刷各個算法時,需要配置環境,現對步驟做一下總結:

1.按照正常套路安裝IDEA軟件及相關版本JKD,並完成相關的配置。

2.將下載好的algs4.jar放在IDEA對應的JDK目錄下lib文件夾中。

        

3.導入到IDEA的方法:

打開File->Project Structure->Modules->Dependencies,然後點擊右上角加號,選擇JARs or directories,找到剛纔algs4.jar所在目錄,選擇algs4.jar,確認即可。

4.配置環境變量:

在系統變量中添加變量 JAVA_HOME,變量值爲JDK的安裝目錄

在系統變量中添加CLASSPATH:.;%JAVA_HOME%\lib\algs4.jar;%JAVA_HOME%\lib;

在系統變量的Path中添加%JAVA_HOME%\bin;

5.重啓電腦讓環境變量生效。

6.把下載的數據文件algs4-data.zip解壓到一個文件夾,比如D:\work\javalearning,以運行BinarySearch.java爲例。

  • 按照步驟編寫BinarySearch.java
  • package com.scott.algs;
    import java.util.Arrays;
    import edu.princeton.cs.algs4.In;
    import edu.princeton.cs.algs4.StdIn;
    import edu.princeton.cs.algs4.StdOut;
    public class BinarySearch {
        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 [] whitelist = In.readInts(args[0]);
            //int[] whitelist = In.readAllInts();
            In in = new In(args[0]);
            int[] whitelist = in.readAllInts();
            Arrays.sort(whitelist);
            while(!StdIn.isEmpty())
            {
                int key  = StdIn.readInt();
                if (rank(key,whitelist)==-1)
                    StdOut.println(key);
            }
        }
    }

    再點擊IDEA左下方Terminal,進入命令行模式,切換至BinarySearch.java對應的目錄下比如D:\work\javalearning\src\com\scott\algs>

  • 編譯 javac BinarySearch.java
  • 切換路徑至src對應的目錄下(這一步非常重要,跳過這一步會報錯D:\work\javalearning\src> 
  • 運行 java com.scott.algs.BinarySearch D:\work\javalearning\algs4-data\tinyW.txt < D:\work\javalearning\algs4-data\tinyT.txt

編譯的命令爲:javac [文件位置]

運行的命令爲:java [包名.類名]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章