周末感冒啊,头疼,各种不舒服,难搜,香菇,大家千万注意身体啊。本周算法题目是一个涉及栈的题目, Review 方面接着上周看了一半的 RxJava 系列,身体原因只看了一篇。
Algorithm
题目描述
Given a string containing just the characters
'('
,')'
,'{'
,'}'
,'['
and']'
, determine if the input string is valid.An input string is valid if:
- Open brackets must be closed by the same type of brackets.
- Open brackets must be closed in the correct order.
Note that an empty string is also considered valid.
Example 1:
Input: "()"
Output: true
这个题目和算数运算应该都是属于一个系列的,利用栈来判断括弧是否匹配,进而判断优先级并进行运算处理。
Java
public boolean isValid(String s) { |
Python
def isValid(self, s: str) -> bool: |
Runtime | Memory | Language |
---|---|---|
28 ms | 13.3 MB | python |
2 ms | 33.5 MB | java |
Review
本周阅读学习 RxJava系列的文章。主要讲述了 Observable
其它使用操作:
- Delay: 将所有元素的操作延时一定时间;
- Do:注册一个 Observable 对象生命周期的 action 来执行相关操作
doOnNext
、doOnCompleted
、doOnEach
、doOnSubscribe
; - Materialize/Dematerialize
- ObserveOn: 指定后台线程;
- SubscribeOn:前台回调的线程;
- Timeout: 在超出一定时间后还没有传递时间时会有错误事件传递,即执行onError
- Timestamp:将传递的元素转换成
Timestamped<T>
类型的数据,里面不仅包含了原有的数据,还包含元素传递的时间; - Using:创建一个一次性的资源,此资源和 Observable 对象拥有相同的生命周期
Exploring RxJava in Android — Utility Operators
Tips
-
Android 中计时控件可以用
Chronometer
,其本质还是一个 TextView。 -
SQL 中的
LIKE
关键字,可以搭配%
或者_
使用,其中百分号(%)代表零个、一个或多个数字或字符。下划线(_)代表一个单一的数字或字符,两者可以组合使用。 -
Android 中跑 monkey 命令
adb shell monkey [options] <event-count>
option 参数部分可以指定monkey 的包名,事件类型及比例等。
-
本地仓库关联远程:
git remote add origin https://github.com/user_name/repositories_name.git