Tips
- 注意考虑边界条件、特殊输入以及错误处理,一定要对输入值做判断。
- 采用画图将抽象问题形象化、举例将抽象问题具体化和分解问题将复杂问题简单化的方法来理清思路
1. 实现 Singleton 模式
1 | + (instanceType *)sharedInstance { |
线程安全,保证在应用的 lifetime 中只生成一次。其他一些语言实现需要加同步锁如 Java1
2
3
4
5
6
7
8
9private static MyObject instance;
public static synchronized MyObject getInstance() {
if (instance == null){
instance = new MyObject();
}
return instance;
}
2.数组中重复的数字
1 | /** |
3.二维数组中的查找
1 | package com.company; |
4.替换空格
1 | package com.company; |
5.从尾到头打印链表
1 | package com.company; |
栈的实现
1 | package com.company; |