ARTS-No.3

Algorithm

771. 宝石与石头

  • 解法一:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    class Solution {
    public int numJewelsInStones(String J, String S) {
    int total = 0;
    StringBuffer oldString = new StringBuffer(S), newString = new StringBuffer();
    for (int j = 0; j < J.length(); j++) {
    char current = J.charAt(j);
    for (int s = 0; s < oldString.length(); s++) {
    char stone = oldString.charAt(s);
    if (stone == current) {
    total += 1;
    continue;
    }
    newString.append(stone);
    }
    oldString = new StringBuffer(newString);
    newString = new StringBuffer();
    }

    return total;
    }
    }

    执行用时: 4ms, 内存消耗: 35.7MB.

  • 解法二:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    class Solution {
    public int numJewelsInStones(String J, String S) {
    int total = 0;
    for (int j = 0; j < J.length(); j++) {
    char current = J.charAt(j);
    for (int s = 0; s < S.length(); s++) {
    if (current == S.charAt(s)) {
    total++;
    }
    }
    }

    return total;
    }
    }

    执行用时: 2ms, 内存消耗: 34.6MB.

  • 解法三:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class Solution {
    public int numJewelsInStones(String J, String S) {
    int total = 0;
    char[] JArray = J.toCharArray();
    char[] SArray = S.toCharArray();
    for (char j : JArray) {
    for (char s : SArray) {
    if (s == j) {
    total++;
    }
    }
    }

    return total;
    }
    }

    执行用时: 1ms, 内存消耗: 34.5MB.

  • 解法四:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class Solution {
    public int numJewelsInStones(String J, String S) {
    if (J.length() == 0 || S.length() == 0) {
    return 0;
    }

    int total = 0;
    for (char s : S.toCharArray()) {
    if (J.indexOf(s) != -1) {
    total++;
    }
    }

    return total;
    }
    }

    执行用时: 1ms, 内存消耗: 34.7MB

Review

Announcing Stack Overflow for Teams

为了满足个别用户隐私提问的需求, Stack Overflow 开启了一个叫作 Strack Overflow for Teams 的付费功能, 相当于是一个小型的 Strack Overflow, 用户的提问只会被自己团队, 公司或者组织成员看到.

背景:

几乎每个开发团队都需要找寻一种从一开始就建立起过往知识库的解决方案, 便于让每个人检索. 比如新加入团队的员工, 转入新项目的老员工, 抑或是忘记了自己多年前解决过的问题的人.

有一段时间人们认为 wiki 会是这个问题的答案. 但是 wiki 有时候更像是一种写文档的家庭作业, 前人可能要花费很大精力去整理 wiki, 但是并不知道这份 wiki 是否真的会帮到别人.

人们提到的另一个解决方案是 IRC 风格的网上聊天室, 这个产品希望用户在历史聊天记录中找到问题的答案, 但是用户找到的往往是一大堆繁杂的聊天记录.

所以 Stack Overflow 这种问答形式的社区才会兴起. 你在上面查找一个问题, 绿色对号标注的地方往往就是你要的答案.

Tip

wine 应用程序全局快捷键无效的解决方案

Share

Inoreader

一款在线 RSS 订阅系统, 可以用来订阅喜欢的博客, 集成在一起阅读.

Seven wechat
扫码关注, 一起进步.
0%