- 博客(33)
- 收藏
- 关注
原创 筛法求素数
假设要求n以内的素数筛法求素数是用一个大小为n的数组,作为标记数组,如果没被标记到则为素数。开始均为未标记。从2开始,2没被标记,将2存入一个存素数的地方,然后筛掉小于n的,2的所有倍数。然后是3,筛掉3的所有倍数,依此类推,直到n-1。优化上面的做法,同一个数可能会被筛掉多次,比如6会被3和2各筛一次。为了提高效率,需要进行优化,使得每个数尽可能的被少筛,如果能一次最好。考虑到任何合数都可以分解
2017-11-06 15:22:21
409
原创 筛法求素数
筛法求素数 假设要求n以内的素数筛法求素数是用一个大小为n的数组,作为标记数组,如果没被标记到则为素数。开始均为未标记。从2开始,2没被标记,将2存入一个存素数的地方,然后筛掉小于n的,2的所有倍数。然后是3,筛掉3的所有倍数,依此类推,直到n-1。优化上面的做法,同一个数可能会被筛掉多次,比如6会被3和2各筛一次。为了提高效率,需要进行优化,使得每个数尽可能的被少筛,如果能一次最好。考虑到任
2017-09-14 13:03:18
568
原创 C++ 泛型
C++ 泛型函数模版使得函数支持不同类型template<class T>void swap(T & a, T & b){ T temp = a; a = b; b = temp;}可以不止有一个参数template<class T1, class T2>// code here函数模版可以重载类模版写法template <类型参数表>class 类模版名{
2017-09-06 18:56:52
384
原创 C++ 文件操作
C++ 文件操作打开文件直接创建ofstream(ifstream)对象ofstream outFile("文件名", ios::参数1|ios::参数2);文件名,可以使用绝对路径或相对路径*参数一:指示如何存取文件,可选值 out(覆盖) app(在末尾添加)等 *参数二:指示以何种方式打开,可选值 binary (以二进制形式打开)使用ofstream(ifstream)对象的ope
2017-09-06 17:08:16
432
原创 C++ 运算符重载
C++ 运算符重载基本模式[返回值类型] operator [需要重载的符号](参数1,参数2,..)1.作为成员函数重载// classpublic: BigInt operator+(const BigInt &num2);//BigInt BigInt::operator+(const BigInt &num2) { BigInt ans; //code here
2017-09-06 16:31:01
360
原创 POJ 魔兽世界之一:备战 题解
POJ 魔兽世界之一:备战 题解来源: POJ 注意: 总时间限制: 1000ms 内存限制: 65536kB描述魔兽世界的西面是红魔军的司令部,东面是蓝魔军的司令部。两个司令部之间是依次排列的若干城市。红司令部,City 1,City 2,……,City n,蓝司令部两军的司令部都会制造武士。武士一共有 dragon 、ninja、iceman、lion、wolf 五种。每种武士都有编号、生命值、
2017-07-24 20:26:02
1891
原创 C++ 友元
C++ 友元友元分为友元函数和友元类友元函数一个类的友元函数可以访问该类的私有成员声明方法:在该类中用friend关键字对函数进行声明例如:声明两个car的友元函数,一个为类外部的函数,一个为driver类内部的函数class car;class driver{ public: void modifyCar(car * pCar);}class car{ pri
2017-07-24 17:15:11
286
原创 C++ 常量对象,成员函数,引用
C++ 常量对象,成员函数,引用如果不希望某个对象的值被改变,则可以在定义的时候加const也可以定义常量成员函数,使得该函数不能修改其所作用的对象的值常引用类似定义方法:const Car a; // 常量对象void test() const; // 常量成员函数定义方法void test() const {}const int & b; // 常引用定义方法
2017-07-24 17:14:49
485
原创 C++ 静态成员
C++ 静态成员加static关键字修饰的变量函数特点 为整个类所共有可私有可公有sizeof(对象)不计算静态成员变量静态成员函数只能访问静态成员变量访问方法类名::成员名对象名.成员名指针->成员名引用.成员名初始化静态成员变量要在类所在文件进行一次初始化int test::a = 0;int test::b = 0;class test{ public:
2017-07-24 10:37:43
386
原创 C++ 成员对象
C++ 成员对象一个类中也可以有其他类的对象,这个对象称为这个类的成员对象含有成员对象的类叫做封闭类初始化初始化要特别注意初始化列表:类名::构造函数(参数表):成员变量1(参数表),成员变量2(参数表),...{ //其他初始化}
2017-07-24 10:37:10
775
原创 C++ 析构函数
C++ 析构函数析构函数是为了配合delete使用用于删除new出来的对象的内存空间定义方法:class test{ ~test() { delete something }}名字与类名相同在前面加~没有参数没有返回值一个类只能有一个析构对象没了,析构函数自动被调用每个对象调用一次,数组对象,调用数组长度
2017-07-23 22:17:24
263
原创 C++ 类 构造函数
C++ 类 构造函数C 类 构造函数初始化构造函数复制构造函数类型转换构造函数初始化构造函数复制构造函数类型转换构造函数初始化构造函数作用:初始化可以重载可以有缺省没有定义,调用无参默认构造函数构造函数名与类名相同放在public里class test{ public: test() { //your code
2017-07-23 20:34:34
485
原创 C++ 内联函数
C++ 内联函数将函数体代码直接插入到调用位置好处:提高程序运行效率坏处:增大了程序大小intline int max(int a,int b){ if(a > b) return a; return b;}类内部的内联函数第一种: 使用 inline 关键字第二种: 在类内部实现函数class test{ public: inline void func1();
2017-07-23 11:23:33
282
原创 C++ 引用
C++ 引用引用在定义时必须初始化,且之后不能更改int a = 3;int & b = a;b为引用类型b相当于a的一个别名可以通过b修改a的值b = 2;output:a = b = 2当用 const 修饰时,不能通过引用修改原变量的值同时引用类型变量,不能引用另一个被const修饰的引用类型变量const int &b = a;b = 3; //wrong引用应用实例交换变量
2017-07-22 22:58:07
292
原创 C++ 函数重载
C++ 函数重载函数名字相同,参数不同,叫做重载编译器根据实际情况,选择对应函数好处:使得函数命名变得简单int max(int a1, int a2) {}double max(double a1, double a2) {}int max(int a1, int a2, int a3) {}
2017-07-22 22:57:26
261
原创 C++ 函数缺省参数
C++ 函数缺省参数C++中,定义函数的时候可以让最右边的连续若干个参数有缺省值。如果调用的时候没写,就默认为那些值。void func(int x1, int x2 = 2, int x3 = 3) {}func(10);func(10,8);func(10, ,8); //wrong好处:提高程序的可扩充性新加的参数,可与之前的调用兼容
2017-07-22 22:57:05
652
原创 C++ 动态内存分配
C++ 动态内存分配new 关键字用 new 可以动态分配一片制定大小的空间给一个指针new T 返回空间首地址new 一个变量int * a = new int;*a = 3;new 一个数组int *b = new int[20];b[1] = 2;delete 关键字delete 指针 只能释放new出来的空间,定义的变量等无法释放delete 对一个指针只能用一次delete 数
2017-07-22 22:56:31
316
原创 C++ const关键字
C++ const关键字1.常量定义建议使用const进行常量定义const int maxn = 23;const char a = 'a';cont char* name = "jack";2.定义常量指针常量指针不可以通过常量指针修改其指向的内容b = 2;const int * a = b;*a = 3; //wrong与常引用类似,不能将常量指针赋值给非常量指针,反过来可以应用将函
2017-07-22 22:55:57
267
原创 Windows命令行编译C&&C++程序
Windows命令行编译C&&C++程序C 用 GCC ,C++用G++需要安装Mingw基础命令:g++ file.cpp 默认输出a.exe可以指定输出文件名g++ -o [输出文件名] file.cpp
2017-07-20 19:51:25
323
原创 [Coursera] 机器学习入门
[CS229] 机器学习入门@斯坦福公开课 CS229 Machine Learning 学习笔记CS229 机器学习入门
2017-05-19 02:22:15
633
原创 [Python] Numpy库
NumPy是一个开源的Python科学计算基础库,包含:一个强大的N维数组对象 ndarray广播功能函数整合C/C++/Fortran代码的工具线性代数、傅里叶变换、随机数生成等功能NumPy是SciPy、Pandas等数据处理或科学计算库的基础Python Numpy库
2017-04-21 17:24:28
558
原创 VScode&Python:如何在控制台进行输入,切换解释器版本
VScode&Python:如何在控制台进行输入,切换Python解释器版本
2017-04-07 18:14:55
8641
1
原创 算法回顾之选择排序
简单选择排序是最简单的排序算法之一,它十分直观,易懂,但同时,它也是能力十分强大 的堆排序的基础。思路简单选择排序的思路十分简单,大致如下: 每次从未排序序列中找到权值最大(最小)的项,把它放到未排序序列的最前面,或者说已排序序列的最后面,即和未排序的第一个元素互换。重复执行,知道整个序列有序。
2017-03-31 20:41:00
360
原创 [C#]Winform控件textBox的keypress方法
[C#]Winform控件textBox的keypress方法概述keypress官方解释: 在控件具有焦点,并且用户按下并释放某个键后发生利用keypress方法,我们可以监控用户是否按下某个按键。如:检测enter键是否按下,esc是否按键等通过设置一个变量,我们还能监控某个按键按下的次数。
2017-03-28 22:47:40
10740
原创 [Python]百科搜索聚合
百科搜索聚合概述在大学学习过程中,常常会需要搜索一些遗忘的概念。但是从单方面,如百度百科获取信息,有时候不足以完全理解某些概念,需要再次从维基百科中查询相关内容。鉴于大陆对维基百科中文的不友好,我们还需要把概念翻译成英文后再进行搜索。这个基于Python3.5的百科搜索聚合便是为此而设计,你只需给出关键词的中文或英文,程序便会自动爬取所需概念的概要,打印到屏幕上。
2017-03-26 22:11:27
674
原创 C语言版贪吃蛇:第二部分
C语言版贪吃蛇:第二部分本章将学习以下内容学习蛇的运动原理 利用链表存储 蛇每一节的坐标根据坐标打印出蛇利用随机数生成食物打印食物
2017-03-23 00:27:45
863
原创 Python爬虫系列:开端
网络爬虫,顾名思义,是从网络上爬取特定信息的工具。利用Python,我们能以很少的代码,写出一个能为我们所用的网络爬虫,并且通过这个爬虫,我们便能够在互联网上,自动爬取文本,图片,视频,文件等。
2017-03-21 19:49:19
519
原创 Visual Studio Code C&&C++ 编译配置
Visual Studio Code C&&C++ 编译配置 工欲善其事必先利其器Visual Studio Code 是微软出品的一款简单,美观,快速的代码编辑器,拥有丰富的扩展,通过配置,我们可以直接编译简单的C,C++程序。Visual Studio Code CC 编译配置下载配置安装插件安装MinGw配置文件下载从微软官网下载 Visual Studio Code 安装包并
2017-03-20 19:28:43
7809
2
原创 [离散] 编程求命题公式真值表
[离散] 编程求命题公式真值表概述真值表是离散数学中的一个重要概念,由真值表我们能求得任意命题公式的主析取范式和主合取范式。本文将用C语言编写一个求任意命题公式真值表的程序
2017-03-18 09:41:19
18161
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人