Eclipse直接运行算法第4版例子(重定向和读取指定路径文件)
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
在阅读算法(Algorithms Fourth Edition) 第4版时,第一个二分查找法的例子时:
package algs.search;
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 = ;
int hi = a.length - ;
while(lo <= hi) {
int mid = lo + (hi - lo) / ;
if(key < a[mid]) hi = mid - ;
else if(key > a[mid]) lo = mid + ;
else return mid;
} return -;
} public static void main(String[] args) {
@SuppressWarnings("deprecation")
int[] whitelist = In.readInts(args[]);
Arrays.sort(whitelist);
while(!StdIn.isEmpty()) {
int key = StdIn.readInt();
if(rank(key, whitelist) < )
StdOut.println(key);
}
}
}
发现书本中是用命令行直接执行程序
% java BinarySearch tinyW.txt < tinyT.txt
50
99
13
但是命令行直接运行的话,在编译时需要使用algs4.jar包中的类,所以我们编译以及运行代码时都需要指定jar包参数,觉得麻烦,想直接配置在Eclipse中,网上查找大量资料,总结出以下方式:
tinyT.txt文件重定向设置,单击Run As—>Run Configurations
选择Common项,勾选Input File复选框,选择要输入的tinyT.txt文本
设置输入参数,同样在Run Configurations中,Arguments项
注意: 此处参数tinyW.txt是相对路径,如跟图示配置一致,请将tinyW.txt文件拷贝至项目根路径,即/src/ 上级目录。
执行Run,成功!