第47周 ARTS 2019 09 08

Algorithm:5067. 统计只含单一字母的子串
Review: Synchronization and Object Locking
Tip/Tech:快排的非递归实现
Share:爱尔兰青少年因从海洋中去除微塑料而获得谷歌科学奖

Algorithm

5067. 统计只含单一字母的子串

https://leetcode-cn.com/contest/biweekly-contest-8/problems/count-substrings-with-only-one-distinct-letter/
这题只要理解了题目的意思就很简单了。应该是重在理解的一道题目时间复杂度是 O ( n 2 ) O(n^2) O(n2),但是就不知道是否有更加简单的 O ( n ) O(n) O(n)的时间复杂度的做法。我到现在是还没想到最好的子结构的做法。我们先来看看代码吧。

class Solution {
    public int countLetters(String S) {
        if (S == null || S.length() == 0) {
            return 0;
        }
        String str;
        char[] chars = S.toCharArray();
        int count = 0;
        for (int i = 0, len = chars.length; i < len; i++) {
            char temp = chars[i];
            for (int j = i; j < len; ++j) {
                if (temp == chars[j]) {
                    count++;
                } else {
                    break;
                }
            }
        }
        return count;
    }
}

Review

Building a Content Based Recommender for Data Science Articles

构建基于内容的数据科学文章推荐器

https://towardsdatascience.com/building-a-content-based-recommender-for-data-science-articles-728e5ec7d63d
作者将一些论文的数据作为基础来构建了一个简单推荐系统引擎demo。
从文中,我们可以简单的看出,要构建一个推荐系统,一般来说就是要先处理数据,然后根据数据建模,然后构建输入和输出的系统,不过好像这篇文章里没有什么评估的环境啊。
不过代码倒是挺全的。

Tip/Tech

位图 bitmap,这个数据结构主要是用来实现布隆过滤器的。
但是理解起来有点费劲。

public class BitMap { // Java 中 char 类型占 16bit,也即是 2 个字节
  private char[] bytes;
  private int nbits;
  
  public BitMap(int nbits) {
    this.nbits = nbits;
    this.bytes = new char[nbits/16+1];
  }

  public void set(int k) {
    if (k > nbits) return;
    int byteIndex = k / 16;
    int bitIndex = k % 16;
    bytes[byteIndex] |= (1 << bitIndex);
  }

  public boolean get(int k) {
    if (k > nbits) return false;
    int byteIndex = k / 16;
    int bitIndex = k % 16;
    return (bytes[byteIndex] & (1 << bitIndex)) != 0;
  }
}

Share

https://www.businessinsider.com/robots-are-taking-over-stats-2016-3

Why I’m convinced the robots are already here and only getting stronger

在纪录片《美国工厂》中,我们可以看到,当代的美国的制造业的因为受到了08年的金融危机的影响,一直没有缓过来,后来特朗普的上台后,一直执行“让制造业回归美国”的政策,制作业的失业的工人的就业现状收到了一定的缓解,曹德旺在美国开工厂,因为中美的工人的素质以及就业环境的差异,所以形成了领导层和工人层的冲突。但是因为工人已经害怕了失业了,所以最后工会想要进入工厂还是以失败告终。
那么我们可以发现,工会最后的失败不是因为工厂的有多么的优秀,福利有多么的好,待遇有多么领先,而是因为工人的对于失业的恐惧。
那么这种恐惧的根源在哪?
我想用一张图来说明下:
在这里插入图片描述
这个上蓝色的代表着制造业的增长曲线,其实制造业是一直增长的,但是红色的线代表着制造业的工作量,虽然制造业在增长,但是工作量却没有增长。
这其实说明了一个很很残酷的现实,就是其实自动化已经代替了很多原来的工人的工作了,所以现在的人的那些重复的工作已经不存在了。
纪录片的最后的那个镜头才是全片的重点,就是,人的工作无法和机器相提并论啊,最后免不了机器人代替工人的结局。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值