Android工程师之ARTS挑战第六期第7周

目标:

  1. Algorithm 每周至少做一个 leetcode 的算法题

  2. Review:阅读并点评至少一篇英文技术文章

  3. Tip:学习至少一个技术技巧

  4. Share:分享一篇有观点和思考的技术文章

第7周:

Algorithm算法

Leetcode 62

class Solution {
    public int uniquePaths(int m, int n) {
        //C(m+n-2,n-1) = C(m+n-2,m-1)
        int sum = m + n -2; //一共要走的步数
        int down = n - 1;  //向下要走的步数
        double res = 1;
        for(int i = 1;i <= down; i++){
            res =res * (sum - down + i) / i;
        }
        return (int)res;
}
}

Review:阅读并点评至少一篇英文技术文章

https://cmake.org/cmake-tutorial/ Cmake的使用指南

Tip:学习归纳技术技巧

  • 字长:字长是CPU的主要技术指标之一,指的是CPU一次最大能并行处理的二进制位数,现在是32位和64位
  • 原码,反码,补码 (二进制)
    • 为了表示负数,将最高位解释为符号位
    • 正数的原码、反码、补码均相同
    • 对于负数,已知原码求反码,符号位不变,其它位按位求反
    • 对于负数,已知原码求补码,先求反码,再在反码末位加1

Share:分享一篇有观点和思考的技术文章

  • https://mp.weixin.qq.com/s/698xPCEe6LDlU12fVfCY5Q

你可能感兴趣的:(Android)