【ARTS】打卡第七周

每周完成一个ARTS

  • 每周至少做一个 leetcode 的算法题

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

  • 学习至少一个技术技巧

  • 分享一篇有观点和思考的技术文章。

  • (也就是 Algorithm、Review、Tip、Share 简称ARTS)

    Algorithm

    两数之和 II - 输入有序数组

    给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。

    解法

    时间复杂度:O(n)
    空间复杂度:O(1)
    思路:因为是有序数组,可使用首尾指针的方法,不断向中间移动

    vector<int> twoSum(vector<int>& numbers, int target) {
       int i = 0, j = numbers.size() - 1;
       vector<int> vret;
       while(i <= j ){
           if (numbers[i] + numbers[j] > target)
               j --;
           else if (numbers[i] + numbers[j] < target)
               i ++;
           else{
               vret.push_back(numbers[i]);
               vret.push_back(numbers[j]);
               break;
           }
       }
       return vret;
    }
    
    

    Review

    How you should think about docker containers if you understand linux.

    介绍了linux容器的相关概念,以及容器使用的cgroups、namespace、chroot等技术。

    Tip

    yum下载RPM包及依赖包的两种方式

    通过该方法,可以下载到需要的rpm包。

    Share

    Redis实现分布式锁

posted @ 2019-09-01 22:33  JESSET  阅读(121)  评论(0编辑  收藏  举报