zoukankan      html  css  js  c++  java
  • 普林斯顿大学算法课 Algorithm Part I Week 3 自我总结

    要熟练掌握比较器Comparator

    public final Comparator<T> MY_COMPARATOR = new myComparator(); //定义比较器
    .....
    public int comparaTo(T t){
    .....
    }
    
    private class myComparator implements Comparator<T>{
      public int compare(T v, T w){
      return v.comparaTo(w)                   
      //compare()是比较器里的重写方法
      //一般来说compareTo()是compare()的具体实现方法,但这不是固定的,只是习惯。你可以完全不用compareTo()
      }
    }

    Week3作业里提到的一些方法或类

    • toString()
    • draw.point()和draw.line():画点和画线段
    • Comparator
    • java.util.Arrays.sort(a, lo, hi)、java.util.Arrays.sort(a, lo, hi, Comparator)  ——> 很常用很重要的排序

    代码风格:

    return new MyClass() {
      @Override public void method() {
        if (condition()) {
          try {
            something();
          } catch (ProblemException e) {
            recover();
          }
        }
      }
    };
    • 左大括号前不换行
    • 左大括号后换行
    • 右大括号前换行
    • 如果右大括号是一个语句、函数体或类的终止,则右大括号后换行; 否则不换行。例如,如果右大括号后面是else或逗号,则不换行。
    void doNothing() {}
    • 一个空块状结构什么也不包含,不需要换行,括号写在一起。
    if () {
    // your code
    }
    else if {
    // your code
    }

    需要空格的地方

    • 分隔任何保留字与紧随其后的左括号(()(如if, for catch等)。
    • 分隔任何保留字与其前面的右大括号(})(如else, catch)。
    • 如果在一条语句后做注释,则双斜杠(//)两边都要空格。这里可以允许多个空格,但没有必要。
    • 类型和变量之间:List list。
    • 数组初始化中,大括号内的空格是可选的,即new int[] {5, 6}和new int[] { 5, 6 }都是可以的。

    参考:Google Java Style中文版


    需要加强的部分  

    • API文档的查看
    • 编辑器的使用(不会用,心情被搞得好糟糕)
  • 相关阅读:
    正则表达式
    http协议组成(请求状态码)
    谈一谈你对js线程的理解
    CSS 中定位方式有几种,说明他们的意义
    手机端白屏前端优化的方法,5 种以上
    用 js 写一个获取随机颜色的程序
    如何获取本地存储信息
    cuda 版本查阅
    ubuntu16.04 ROS安转及RVIZ启动
    Tensorflow和Caffe 简介
  • 原文地址:https://www.cnblogs.com/Jimtastic/p/4006432.html
Copyright © 2011-2022 走看看