本文主要是介绍【杂项总结】筛法,内部类,typedef,typename,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.筛法:
做表一般只需要做到sqrt(n)。
①判断某个数是否为质数:只需要做到sqrt(n)+1,如果目前有有一个质因数,则他为合数;如果没有则为质数。
②判断质因数个数:做到sqrt(n)+1,每次判断出一个就用n/primei,直到不能再/primei。这样做到头,如果没找到质因数则n一定为质数(质因数个数为0);若n辗转相除之后!=1,且找到至少一个质因数,则质因数个数++。
(例题见http://cxsjsx.openjudge.cn/hw202009/G/)
2.内部类
例题:定义三维数组类
在3维数组内部定义了一个2维数组类
http://cxsjsx.openjudge.cn/hw202008/C/
3.typedef
https://blog.csdn.net/qq_31073871/article/details/81258558?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
4.typename
我们遇到的一个问题是,类模板里面,如果T是一个容器,想定义一个指针的时候必须使用typename
解释如下:
当引用类型T的内部类型(inner type)时, 必须使用关键字typename。例如:
template <class T>class MyClass {public:typename T::SubType *ptr; // SubType 是T的一个内部类型,这里的typename 必不可少!....};
https://blog.csdn.net/e5Max/article/details/44992337?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158561964019725256735080%2522%252C%2522scm%2522%253A%252220140713.130056874…%2522%257D&request_id=158561964019725256735080&biz_id=0&utm_source=distribute.pc_search_result.none-task
这篇关于【杂项总结】筛法,内部类,typedef,typename的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!