- 博客(18)
- 收藏
- 关注
原创 时间复杂度和空间复杂度
时间复杂度和空间复杂度函数的渐进增长判断一个算法的效率时,函数中的常数和其他次要项常常可以忽略,而更应该关注主项(最高项)的阶数算法时间复杂度在进行算法分析时,语句总的执行次数T(n)是关于问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度(算法的时间量度)。记作:T(n)= O(f(n))它表示随着问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂度。 f(n)是问题规模n的某个函数一般情况下,随着
2020-12-07 22:02:24 128
原创 面向对象程序设计9.1——继承与组合
代码复用——也称“代码重用”,是软件重用的一种,指在不同的软件开发过程中重复使用相同或相似的软件元素,软件元素包括程序代码、测试用例、设计文档等。开闭原则:对修改是关闭的——被复用的类,其内部的代码不应该被修改,比如string类对扩展时开放的——在类的原有行为(函数成员)基础,可新增行为,也可修改(函数覆盖)原有的行为C++的继承格式与概念class 类名A : 继承方式 类名...
2020-05-03 22:56:19 424 1
原创 面向对象程序设计8.3——对象构成的序列
对象数组C++的对象数组CMyComplex x[10] = {……}// ‘ …… ’中必须是对象CMyComplex x[10] = { CMyComplex(0,0), CMyComplex(1,0), CMyComplex(0,1), CMyComplex(1,1) };规则对象数组初始化值必须是同一个类的对象上述写法将导致创...
2020-04-27 01:14:13 252
原创 面向对象程序设计8.1——C++的字符串类
字符串类串(字符串——由字符构成的符号串)与基本操作取串长判断两个串长是否相同取子串/取串指定位置的字符串或子串判断一个串是否包含另一个串串拼接把串中指定的片段替换掉把串中所有字母变成(大写/小写)……创建C++的String类#include<iostream>class CMyString //字符串类 { priv...
2020-04-25 19:16:25 612
原创 面向对象 程序设计7.2——复数算术运算
成员函数实现——复数算术运算Java的复数减法public ComplexNumber Sub(ComplexNumber y) //复数减法 { //通过指针的方法实现 double r = real - y.real ; double i = imag - y.imag ; Compl...
2020-04-14 23:52:18 612
原创 面向对象程序设计7.1——对象的运算
对象的运算设计复数类数值与类型数集的拓展:整数类型:int,long,short……实数类型:float,double……编写Java的复数类1.必要改进,实部/虚部为0不显示2.虚部为1,“1”不显示3.虚部为负,(3+ -5i)→(3- 5i)...
2020-04-14 20:40:20 817
原创 面向对象程序设计7——类的拓展-统计类的个数
类的静态成员-C++类是类型的拓展对象是变量的拓展创建一个计数器,统计当前时刻系统中对象的个数——初值为0,每创建一个对象就把计数值+1,每释放一个对象就把计数值-1创建对象一定会调用构造函数,因此可以在构造函数中对该计数器+1释放对象一定会调用析构函数,因此可以在析构函数中对该计数器-1构造函数允许重载,可能存在多个构造函数构造函数和析构函数能对该计数器进行操作方案一:全局...
2020-04-02 16:03:59 712
原创 C报错——[Error] ld returned 1 exit status
一.基本函数名称写错二.静态数据成员未在类声名外进行初始化#include<iostream>class CMyDate{ private: static int a; public: CMyDate(int a) {printf("%d\n",a);} ~CMyDate() {printf("%d\n",a);} void Show()...
2020-04-02 15:02:58 732
原创 面向对象程序设计6——C++中的对象
对象生存期C++中对象的种类全局对象先定义后使用;程序启动时创建,运行结束时释放局部对象谁定义谁使用,所在函数被调用时创建,从函数返回前释放堆对象通过指针向该对象的指针访问,即能够得到指针即可使用;由delete命令释放#include<iostream>using namespace std;class CMyDate{private: int ye...
2020-03-20 23:26:39 206
原创 面向对象程序设计5.1——Java创建对象
对象-JavaC++三种创建对象的方式1.在栈中创建局部对象2.在静态区中创建全局对象3.在堆中 创建对象(堆对象)Java只有上述方式的第三种,即创建堆对象Java的MyDate类class MyDate{ private int year,month,day;//数据成员,实例变量 public void Show()//函数成员,方法 { System....
2020-03-17 16:09:45 127
原创 面向对象程序设计5——C++创建对象
对象CMyDate类class CMyDate{private: int year,month,day; public: void Show() bool LeapYear() int Weekday }; //类的定义,也称“定义了一个类”有了类型可以定义变量有了类可以定义对象(类的实例化)CMyDate bir;//CMyDate 类型名,比照类型//b...
2020-03-17 13:35:54 516
原创 面向对象程序设计1——面向过程 到 面向对象
从 面向过程 到 面向对象从C到C++第一代:机器语言——用0,1写代码第二代:汇编语言——用助记符写代码第三代:高级语言——面向过程,用表达式和格式化命令符写代码 C,(Java,C++有非过程化倾向)第四代:非过程化语言——用结构化命令和可视化操作编写软件增加了功能强大的输入输出方法——cin与cout使用cin输入不用过多考虑数据的类型#include<ios...
2020-03-13 15:24:00 174
原创 面向对象程序设计4——类={数据+函数+访问权限}
类从面向过程到面向对象面向过程(Procedure Oriented)是一种以操作序列为中心的编程思想编程目的是实现计算机辅助的数据处理把完成任务需要的命令按一定格式编写,完整的程序要考虑各种可能的操作流程常用的流程,顺序结构、选择结构、循环结构以及递归面向过程的程序设计不仅要知道要做什么,还要清楚如何通过具体的流程实现这个任务,以及知道写出的代码将会被如何执行描述事物——具...
2020-03-12 16:54:39 238
原创 面向对象程序设计3——STL常用函数模板
STL-Standard Template Library(标准模板库)Java没有函数模板的概念STL是一个C++软件库包含算法、容器和迭代器三大类,其中算法以函数模板的形式提供了交换、查找、替换、逆序、排序等功能。使用任何一个函数模板都要求包含头文件:#include <algorithm> //algorithm 算法交换函数swap——交换两个变元的值#...
2020-03-09 18:29:27 242
原创 面向对象程序设计2——参数数量/类型不同的函数&函数多态
参数数量不同的函数编写求最大值的函数1.C++和Java都允许在有效范围相同的区域内出现同名函数重载函数-overloaded function2.编译时,根据调用命令中的实际参数选择相匹配的版本作为被调函数不允许函数形参列表完全相同而函数返回值类型不同的同名函数(形参的数量、类型、次序相同,不含形参名称)3.如果出现多个函数匹配版本,则编译报错ambiguus call ove...
2020-03-08 21:24:54 852
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人