【ARTS】26 week

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_22073849/article/details/80871485

https://github.com/angel-star/ARTS/tree/master/2018_07_01

Algorithm

1. Two Sum

之前还想不用LeetCode了,后来做了下比较其他平台或者其它地方的题库都没有它做的好,所以还是用它吧。本周从第一题开始。过去做过的很多题都是用Python做的,现在用C++重新实现一遍。

下面给出C++实现

using namespace std;

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        vector<int> ns;

        for(auto i = 0;i < nums.size(); i++){
            for(auto y = i+1; y<nums.size(); y++){
                if(nums[i]+nums[y]==target){
                    ns.push_back(i);
                    ns.push_back(y);  
                    return ns;}
            }
        }

    }
};


}

Complexity Analysis:

  • Time complexity:

  • Space complexity:

下面是另一种做法:

class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        unordered_map<int, int> map;

        for (int i = 0; i < nums.size(); i ++) {
            auto it = map.find(target - nums[i]);

            if (it != map.end()) {
                return { i, it->second };
            }

            map[nums[i]] = i;
        }

        return { 0, 0 };        
    }
};


Complexity Analysis:

  • Time complexity:

  • Space complexity:

Technique

大家可能对top监控软件比较熟悉,今天我为大家介绍另外一个监控软件Htop,姑且称之为top的增强版,相比top其有着很多自身的优势。如下:

这是最近室友推荐给我的神器,今天推荐给大家:

  • 两者相比起来,top比较繁琐
  • 默认支持图形界面的鼠标操作
  • 可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行
  • 杀进程时不需要输入进程号等
  • htop 支持鼠标操作。

官网:请点击这里

顺便说一句,目前最新的版本是:2.2.0.

安装命令:

yum install htop

apt-get install htop

MAC端可以用

brew install htop

Share

在初步接触机器学习的时候,对于已经学过线性代数很多年的我们往往会在最开始的地方卡住——PCA,特征值分解……

于是我极力推荐大家读一下下面这篇文章

特征值分解、奇异值分解、PCA概念整理

这篇文章介绍了这几个名词并给出了相应的代码示例,相信会对大家有所启发。

猜你喜欢

转载自blog.csdn.net/qq_22073849/article/details/80871485