【笔面试真题】ThoughtWorks-笔试-2022年1月21日

一、选择填空判断

 

 2n-1

 

 

 

 

二、算法题

算法题1:配对括号

算法题2:计算有效票数?

算法题3:求字符串中指定单词的数量

package com.jhliu20.real;

import java.util.HashMap;
import java.util.Map;

/**
 * 第三题:计算一个字符串中指定单词的数量
 */
public class ThoughtWorks_03_findWordNum {
    public static void main(String[] args) {
        int num = getNum("hello my so clear name is liu jinhui, so", "so");
        System.out.println(num);
    }

    public static int getNum(String line, String word) {
        Map<String, Integer> map = new HashMap<>();
        StringBuilder sb = new StringBuilder();
        for(Character c :line.toCharArray()) {
            if(c.equals(' ') || c == ' ') {
                map.put(sb.toString(), map.getOrDefault(sb.toString(), 0) + 1);
                sb = new StringBuilder();
                continue;
            } else {
                sb.append(c);
            }
        }
        //添加这一行
        map.put(sb.toString(), map.getOrDefault(sb.toString(), 0) + 1);
        return map.getOrDefault(word, 0);
    }
}

 

posted @ 2022-01-21 20:21  哥们要飞  阅读(575)  评论(0编辑  收藏  举报