直接刷Leetcode感受到了自己对算法了解的缺乏。 决定先领略一下这本经典算法圣经的魅力。
真的体会到了从零开始,甚至连一些大二课程内容都忘了。
寄希望于亡羊补牢为时不晚了。
开篇讲了一个欧几里得的寻找最大公约数的巧妙算法。 复习了一下负数的补码表示,方便了负数的加减法。
负数的补码表示:
对负数的相反数求原码;
按位取反;
末位加一; (真的得感叹下很神奇)
然后是一些基础知识,要注意if后条件的(),执行语句{}分割,末尾的分号等。
声明数组:
double[] a=new double[N];
初始化的情况等。
重载:同名函数,参数列表(个数/类型)的不同,调用时根据参数情况决定调用的函数。
类:静态方法库
与字符串进行+操作的内容会被强制转换成字符串类型
1+1+‘3’返回‘23’
//
java中可以被直接调用的方法都必须是静态的(static)
public修饰符说明是公开方法(废话)
main函数的标准格式
public class ClassName{ public static void main(String[] args){
}
}
args是定义的数组 作用是接收命令行参数然后再程序运行的时候进行参数传递,如果不传递参数则参数为空。
//
重定向:将标准输出重定向至文件或作为另一个程序的输入
% java RandomSeq 1000 100.0 200.0 >data.txt
管道:将一个程序的输出重定向为另一个程序的输入
% java RandomSeq 1000 100.0 200.0 | java Average
这样突破了计算机的存储限制
StdDraw:一个绘图库
参考
暮雪风的blog
https://www.cnblogs.com/test-angel/p/9858611.html