- 博客(5)
- 收藏
- 关注
原创 《剑指offer 第2版》面试题3:数组中重复的数字
当扫描到下标为i的数字时,首先比较这个数字(用m表示)是不是等于i。如果它和第m个数字相等,就找到了一个重复的数字(该数字在下标为i和m的位置都出现了);如果它和第m个数字不相等,就把第i个数字和第m个数字交换,把m放到属于它的位置。从头到尾按顺序扫描数组的每个数字,每扫描到一个数字的时候,都可以用O(1)的时间来判断哈希表里是否已经包含了该数字。如果这个数组中没有重复的数字,那么当数组排序之后数字i将出现在下标为i的位置。由于数组中有重复的数字,有些位置可能存在多个数字,同时有些位置可能没有数字。
2025-06-25 14:53:20
169
原创 《剑指offer 第2版》面试题2:实现Singleton模式
Singleton 模式是设计模式中的一种,属于创建型模式。它确保某个类只有一个实例,并提供全局访问点来访问这个实例。这种模式通常用于那些只需要一个对象实例的场景,比如:数据库连接池、线程池、配置管理器等。
2025-06-23 12:53:16
570
原创 C#与C++的区别
struct和class都可以用于定义类型。如果没有标明成员函数或者成员变量的访问权限级别,那么在struct中默认的是public,而在class中默认的是private。
2025-06-22 15:23:32
1219
原创 《剑指offer 第2版》面试题1:赋值运算符函数
赋值运算符函数”指C++中重载赋值运算符(operator=)的函数。在定义类中,尤其是当类中有指针成员变量或资源需要手动管理时(如内存、文件句柄等)。1、浅拷贝赋值:只复制指针地址,data=other.data;2、深拷贝赋值:创建新对象,复制值,data = new int(*other.data);
2025-06-22 13:55:45
1300
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人