算法学习---基础
tags:算法
本章主要学习了一下书中要使用的类库以及java基础
- 1.1 Java基本编程
- 1.2 数据抽象
- 1.3 背包,队列和栈
- 1.4 算法分析
基础编程模型
java程序的基本结构
典型静态方法的实现javashili
package nh.algorithrm.study;public class day1 { /** * 计算一个整数的绝对值 */ public static int abs(int x){ return x>0?x:x; } /** *计算一个数是否为素数 */ public static boolean isPrime(int x){ if(x<2) return false; for (int i = 2; i*i<=x; i++) { if (x%i==0) { return false; } } return true; } /** * 计算直角三角形的斜边 */ public static double hypotenuse(double a,double b){ return Math.sqrt(a*a+b*b); }}
文中提及到的一些外部lib文件,需要在>[http://algs4.cs.princeton.edu/11model/]下载stdlib库然后加载到本地。
重定向与输出
StdDraw示例,本书提供了图形输出的类
@Test public void testStdDraw() throws InterruptedException{ int N =100; StdDraw.setXscale(0,N); StdDraw.setYscale(0,N*N); StdDraw.setPenRadius(.01); for (int i = 0; i <=N; i++) { StdDraw.point(i, i); StdDraw.point(i, i*i); StdDraw.point(i, i*Math.log(i)); } }
结果