算法第0天
太长不看,再挖一个坑慢慢填。
今天这篇主要是准备环境,不涉及题目。
对于用惯了 idea 插件的亲,请忽略。
对于 old school vim(或者其他)编辑器偏好的,请继续看。
安装配置 java
这个?答案:(略)。
PS: 可以试试 openjdk [狗头]
配置 junit
md %USERPROFILE%\src
md %USERPROFILE%\src\alg2021\
md %USERPROFILE%\src\alg2021\libs
下载 jar 包 放进 %USERPROFILE%\src\alg2021\libs
https://master.dl.sourceforge.net/project/junit/junit/4.3.1/junit-4.3.1.jar?viasf=1
md %USERPROFILE%\src\alg2021\
md %USERPROFILE%\src\alg2021\bin\
pushd %USERPROFILE%\src\alg2021\bin\
notepad javacc.bat
javacc.bat
内容如下
set name=%~n1
set cpoption=-cp .;..\libs\junit-4.3.1.jar;%CLASSPATH%
set JAVA_TOOL_OPTIONS=-Duser.language=en -Dfile.encoding=UTF-8
javac %cpoption% %name%.java
pushd %USERPROFILE%\src\alg2021\bin\
notepad javarun.bat
javarun.bat
内容如下
set name=%~n1
set cpoption=-cp .;..\libs\junit-4.3.1.jar;%CLASSPATH%
set JAVA_TOOL_OPTIONS=-Duser.language=en -Dfile.encoding=UTF-8
java %cpoption% %name%
set PATH=%cd%;%PATH%
生成 Solution 类文件
md %USERPROFILE%\src\alg
md %USERPROFILE%\src\alg2021\solution221\
pushd %USERPROFILE%\src\alg2021\solution221\
notepad Solution.java
class Solution {
public int maximalSquare(char[][] matrix) {
int size = 0;
return size;
}
}
javacc.bat Solution.java
生成 Test Case 文件
md %USERPROFILE%\src\alg
md %USERPROFILE%\src\alg2021\solution221\
pushd %USERPROFILE%\src\alg2021\solution221\
notepad SolutionTest.java
import static org.junit.Assert.*;
import org.junit.Test;
public class SolutionTest{
@Test
public void test0(){
char [][] prices={{'0'}};
int expect=0;
int actual=new Solution().maximalSquare(prices);
assertEquals(expect,actual);
}
@Test
public void test_faild(){
int expect=0;
int actual=1;
assertEquals(expect,actual);
}
}
javacc.bat SolutionTest.java
生成 Test Runner 文件
md %USERPROFILE%\src\alg2021\
md %USERPROFILE%\src\alg2021\solution221\
pushd %USERPROFILE%\src\alg2021\solution221\
notepad SolutionRunner.java
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
public class SolutionRunner {
public static void main(String[] args) {
Result result = JUnitCore.runClasses(SolutionTest.class);
for (Failure failure : result.getFailures()) {
System.out.println(failure.toString());
}
System.out.println("Result=="+result.wasSuccessful());
}
}
set JAVA_TOOL_OPTIONS=-Duser.language=en -Dfile.encoding=UTF-8
javacc.bat SolutionRunner.java
javarun.bat SolutionRunner.java
Picked up JAVA_TOOL_OPTIONS: -Duser.language=en -Dfile.encoding=UTF-8
test_faild(SolutionTest): expected:<0> but was:<1>
Result==false
参考
https://jdk.java.net/15 (openjdk 15, )
junit 骨架参考地址???找不到了
https://leetcode-cn.com/problems/two-sum/ (leetcode第一题)
网友评论