我通过电话进行了编码采访,并被问到这个问题:
给定一个String(例如):
"aksdbaalaskdhfbblajdfhacccc aoudgalsaa bblisdfhcccc"
和表达式(例如):
"A + B + C-"
哪里:
+:表示重复2次之前的字符
- :表示在重复4次之前的char
查找给定表达式出现在字符串中的次数,其中操作数不连续且连续地发生.
上面的表达式发生了4次:
1) aksdbaalaskdhfbblajdfhacccc aoudgalsaa bblisdfhcccc
^^ ^^ ^^^^
aa bb cccc
2) aksdbaalaskdhfbblajdfhacccc aoudgalsaa bblisdfhcccc
^^ ^^ ^^^^
aa bb cccc
3) aksdbaalaskdhfbblajdfhacccc aoudgalsaa bblisdfhcccc
^^ ^^ ^^^^
aa bb cccc
4) aksdbaalaskdhfbblajdfhacccc aoudgalsaa bblisdfhcccc
^^ ^^ ^^^^
aa bb cccc
Run Code Online (Sandbox Code Playgroud)
我不知道该怎么做.我开始做一个带有大量索引标记的迭代强力方法,但实现了编程中途的混乱和难度:
import java.util.*;
public class Main {
public static int count(String expression, String input) {
int count = 0;
ArrayList<char[]> list = new …Run Code Online (Sandbox Code Playgroud)