如果您有两个主要相同的文件,其中包含1000条记录,您将如何编写代码来查找它们之间的差异.假设不允许使用unix/linux命令.
我的想法:
因为大多数条目都是相同的,所以我们可以对这两个文件的条目进行排序,然后逐个比较每个条目,例如file1中的条目i与file2中的条目i相比较.它是O(n lg n),n是文件的大小.
有O(n)解决方案吗?
假设您编写了一个类A,构造函数是私有的(以防止其他人在堆栈上创建它)然后有一天另一个开发人员添加一个新的ctor,比如A(int),并想在main()中使用:
A a(1)
在堆栈上创建它.你怎么防止这种情况?
我的解决方案
声明一个公共构造函数
A(void& input )
{
Cerr << “please do not create it on stack” << endl ;
exit(1);
}
Run Code Online (Sandbox Code Playgroud)
我不确定它是否正确?
谢谢