剑指offer
赋值运算函数
思路:
• 将返回值类型声明为该类型的引用
• 把传入的参数类型声明为常量引用
• 释放实例自身已有的内存
• 判断传入的参数和当前的实例是不是同一个实例
代码实现: 略
.单例设计模式
题目描述:设计一个类,只能生成该类的一个实例。
思路:非线程安全与线程安全代码实现:
•线程安全的懒汉式:静态内部类
publicclassSingleton{
privatestaticclassSingletonHodler{
privatestaticSingletonourInstance=newSingleton();}
publicstaticSingletongetInstance(){returnSingletonHodler.ourInstance;
}
privateSingleton(){
}
}
.二维数组中查找目标值
题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。
思路:从右上角或左下角开始找,逐行排除,或者用二分法查找代码实现:
•解法一:双指针,时间复杂度:O(mn),空间复杂度:O(1)
评论