算法第四版环境配置

最近在学习算法第四版的时候,遇到一些问题,花了好久才解决,现在把自己的解决办法写下来,帮助以后学习这本书的人

现在已经不需要stdlib-package.jar和algs4-package.jar等之类的jar包了  只需要去官网下载最新版的algs4.jar一个就够了

点击打开链接http://algs4.cs.princeton.edu/code/  点击下载就可以 

  还有就是如何使用args输入的问题

 比如如Random.java那个例子    点击run->configurations->Arguments    直接在Program arguments 中输入 5   100.0  200.0  中间是一个空格  args[0]就是5

还有BinarySearch.java   书上的代码有问题  建议打直接去官网COPY   上面的链接那一页就有BinarySearch.java    后面是tinyW.txt和tinyT.txt    

还有args的问题  看我的代码吧         点击run->configurations->Arguments    直接在Program arguments 中输入 白名单文件名 tinyW.txt    

package programming_Modeling_1_1;

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

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

public class BinarySearch {
 public static int indexOf(int[] a, int key) {
  int lo = 0;
  int hi = a.length - 1;
  while (lo <= hi) {
   // Key is in a[lo..hi] or not present.
   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]);
  Scanner stdin=null;
  try {
   stdin=new Scanner(new File("tinyT.txt"));
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  }
  Arrays.sort(whitelist);
  while(stdin.hasNext()){
   int key=stdin.nextInt();
   if(BinarySearch.indexOf(whitelist, key) == -1){
    StdOut.println(key);
   }
  }
 }
}

 输出结果为 50 99 13

这样做应该就没问题了     其中tinyW.txt就是白名单文件  过滤掉所有tinyT中出现而白名单文件也存在的数字  最后输出的是tinyW不存在的tinyT存在的几个数字
  一定要在

猜你喜欢

转载自blog.csdn.net/qq_31213287/article/details/51104245