自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王小东大将军的博客

读书学习笔记+温故知新

  • 博客(57)
  • 资源 (3)
  • 收藏
  • 关注

原创 C++学习(55)

1. class Eye {public:void Look(void);};组合是在新类中以原有类的对象作为数据成员,继承是在不改变现有的类的基础上,采用现有类的形式并在其中添加新代码,组合一般用于在新类中使用现有类的功能而不是他的接口的情况,就是新类用户看到的只是为新类所定义的接口。而继承则是用于在新类需要向基类转化的情况(多态),这也是组合和继承使用的最清晰的判断方法。结合

2017-06-27 22:42:18 410

原创 图的概念与遍历

1.线性表中的数据元素叫元素;树中数据元素叫结点;图中数据元素叫顶点。(线性表和树可以为空,图不可以为空)2.树中根结点到任意结点的路径是唯一的,但是图中顶点与顶点之间的路径却是不唯一的。路径长度是路径上的边或弧的数目。第一个顶点到最后一个顶点系相同的路径称为回路或环。序列中顶点不重复出现的路径称为简单路径。除了第一个顶点和最后一个顶点外,其余顶点不重复出现的回路称为简单回路或

2017-06-26 16:04:49 408

原创 树学习(7)

1. 中序遍历二叉树可以得到一个有序序列。(正确)2. 对于n个结点的二叉树,其高度为不确定。(如果是完全二叉树,则是[log2n]+1)3. 一颗有124个叶子结点的完全二叉树,最多有248个结点。分析:设第7层叶子结点x个,第6层叶子结点y个,则x/2+y=64x+y=124解得x=120,y=4 。则总的结点个数为120+27 -1=247。下面是

2017-06-26 10:44:45 1560

原创 C++学习(54)

1.分析下述程序:#includeusing namespace std;int main() { intc=23; printf("%d\n",c&c); return0;}分析:&是位与运算符,将前后两个数对应相与。任何数与自身相与,保持不变。(&:同时取1才为1;|:至少有一个1才取1) 2.#includeusing namespace std;

2017-06-26 10:40:12 398

原创 C++学习(53)

1. 派生类继承了基类的私有成员,但是不能直接访问,只能通过派生类的友元函数访问。2. TURBO C中,int占2个字节,long int占4个字节;union联合体是个省内存的定义方法,里面的day,month,year被定义在一个2字节大小的空间。它的取值完全取决于编程人员最后一次对它的引用。 3. float类型(即IEEE754单精度浮点数格式)能表示的最大整数是

2017-06-25 21:40:41 388

原创 C++学习(52)

1.   分析下列程序:#includeusing namespace std;class Myclass { public: Myclass(inti=0) { cout<<1; } Myclass(constMyclass &x) {

2017-06-23 10:35:54 529

原创 C++学习(51)

1.   在C++语言中,下列说法正确的是(D)A inline函数表示编译器一定会将函数体直接插入到调用此函数的地方,这样可以加快程序速度B 局部变量和全局变量不能重名C 静态局部变量内存是运行期分配的,存储在堆栈区D C++不是类型安全语言分析:A选项,内联函数与其他普通函数的区别是,内联函数在生成可执行文件时,其代码块是直接嵌入到调用处的,以此减少函数调用的开销提

2017-06-22 10:26:43 533

原创 树学习(6)

1.  m阶B-树的任何一个结点的左右子树的高度都相等。(因为B-树都是树高平衡的,所以任何一个结点的左右子树的高度都是相等的。)因为B系列树,包括B-、B+、B*,所有叶子结点都在同一层,所以左右子树的高度都是相等。 2.  二叉树的结点的前序序列、中序序列、后序序列中,所有叶子结点的先后顺序(完全相同)分析:因为根据三个遍历的次序和特点,前序是根左右、中序是左根右、后序是左

2017-06-21 16:11:48 729

转载 辨析B树(B-、B+、B*)

B- 树        是一种多路搜索树(并不是二叉的):       1. 定义任意非叶子结点最多只有 M 个儿子;且 M>2 ;       2. 根结点的儿子数为 [2, M] ;       3. 除根结点以外的非叶子结点的儿子数为 [M/2, M] ;       4. 每个结点存放至少 M/2-1(取上整)和至多 M-1 个关键字;(至少 2 个关键字)    

2017-06-21 14:56:07 635

原创 队列学习(3)

1. 循环队列和栈都是线性结构,是逻辑结构的一种.而存储结构是数据在计算机中的表示,循环队列在计算机内是顺序存储结构,栈在计算机内可是以顺序也可以是链式.所以循环队列和栈都是线性逻辑结构,不能说循环队列和栈是存储结构,只能说它们在计算机内的存储结构 2.循环队列解决的是“假溢出”问题,但是仍然会出现真正的溢出问题。(假溢出是下标溢出,真溢出指的是空间溢出)循环队列面临着数组可能会溢

2017-06-21 14:38:45 1087

原创 C++学习(50)

1.  程序开发过程:编辑、编译预处理、编译、连接、运行。2.  比较 #include“file.h”VS.  #include当用#include“file.h”时,先搜索当前工作目录,如果没有,再去搜索标准库,库没有再搜索资源库;当用#include时,编译器先从标准库开始搜索,如果没再搜索资源库目录,若还未找到则搜索当前工作目录。题中的两种方式都会找到stdio

2017-06-21 14:37:37 266

原创 C++学习(49)

1. 子类重新定义父类虚函数的方法叫做继承,不是重载。 2. 词法分析器用于识别:单词。 词法分析是编译的第一阶段。词法分析器的主要任务是读入源程序的输入字符、将他们组成词素( 源程序中的一个字符序列,它和某个词法单元的模式匹配,并被词法分析器识别为该词法单元的一个实例 ),生成并输出一个词法单元序列,每个词法单元对应一个词素。这个词法单元序列被输出到语法分析器进行语法分析。 

2017-06-21 09:37:29 255

原创 位操作学习的一些困惑

点击打开链接 《位操作基础篇之位操作全面总结》对于移位操作,在微软的VC6.0和VS2008编译器都是采取算术称位即算术移位操作,算术移位是相对于逻辑移位,它们在左移操作中都一样,低位补0即可,但在右移中逻辑移位的高位补0而算术移位的高位是补符号位。如下面代码会输出-4和3。#include #include int main(){ int a = -15, b

2017-06-20 12:34:42 258

原创 树学习(5)

1.   二元查找树的任何结点的左右子树都是二元查找树。分析:二元查找树: 它首先要是一棵二元树,在这基础上它或者是一棵空树;或者是具有下列性质的二元树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二元查找树 2.   树中的结点和图中的顶点就是指数据结构中的数据元素。 

2017-06-19 12:22:42 798

原创 栈学习(2)

1.   若栈采用顺序存储方式存储,现两栈共享空间v[1……m],top[i]代表第i个栈(i=1,2)栈顶,栈1的底在v[1],栈2的底在v[m],则栈满的条件是(B)B top[1]+1=top[2]分析:m1和m2如果不相邻,那么要么S[1]还可以允许元素入栈,要么S[2]允许。只有m1 + 1 = m2时,没有多余的空间允许更多元素入栈,此时栈满。 顺序存储方式,栈

2017-06-19 10:54:55 2356 1

原创 链表学习(6)

1.设顺序表的长度为n。下列最坏情况下比较次数小于n的是(A)A 寻找最大项  B 堆排序C 快速排序    D 顺序查找法分析:在顺序表中查找最大项,最坏情况比较次数为 n-1 ;顺序查找法最坏情况下比较次数为 n 。快速排序在最坏情况下需要进行 n(n-1)/2 、堆排序需要 nlog2n ,这两种方法无法确定比较次数是否小于 n 。故本题答案为 A 项。 2.栈和链表是两

2017-06-18 20:21:20 2033

原创 线性表学习(4)

1.     对称矩阵,因此压缩存储可以认为是只要存储下三角矩阵。 2.     广义表中的元素或者是一个不可分割的原子,或者是一个非空的广义表。(错误。广义表的元素可以为空。) 3.     既希望较快查找又便于线性表动态变化的查找方法是(C)A 顺序查找 B折半查找 C 索引查找 D 哈希查找分析:索引查找是在索引表和主表(即线性表的索引存储结构)上进行的查找。索引查找

2017-06-18 15:03:12 2072

原创 C++学习(48)

1. 当派生类中不含对象成员时     ·在创建派生类对象时,构造函数的执行顺序是:基类的构造函数→派生类的构造函数;     ·在撤消派生类对象时,析构函数的执行顺序是:派生类的构造函数→基类的构造函数。      当派生类中含有对象成员时     ·在定义派生类对象时,构造函数的执行顺序:基类的构造函数→对象成员的构造函数→派生类的构造函数;     ·在撤消派生类对象

2017-06-17 22:06:11 292

原创 剑指Offer第2题

Q:请实现一个函数,将一个字符串中的空格替换成“20%”。例如,当字符串为 WE ARE HAPPY。经过替换后字符串为WE20%ARE20%HAPPY。思路 ://1:从前往后插入,这样移动·的次数多不建议 //2:从后往前插入。两者区别:从后往前,每个空格后面的字符只需要移动一次。从前往后,当遇到第一个空格时,要移动第一个空格后所有的字符一次;当遇到第二

2017-06-16 14:03:27 321

原创 剑指offer第1题

Q:在一个二维数组中,每一行都按照从左到右递增顺序排序,每一列都按照从上到下递增排序。完整一个函数,输入这样二维数组和一个整数,判断数组中是否含这个整数。思路一:/*  矩阵是有序的,从左下角来看,向上数字递减,向右数字递增,* 因此从左下角开始查找,当要查找数字比左下角数字大时。右移* 要查找数字比左下角数字小时,上移*/时间复杂度为O(m+n)class Solutio

2017-06-16 13:41:06 550

原创 C++学习(47)

1.如果一个类中声明了纯虚函数,其派生类中没有对该函数定义,那该函数在派生类中仍为纯虚函数,凡是包含纯虚函数的类都是抽象类。 通常重载函数调用的依据是函数名、参数类型、参数个数。 类的静态成员是属于类的而不是属于哪个对象的,因此可以说是所有对象所共有的。 内联函数是在编译时将目标代码插入的。 2.假设下面函数foo会被多线程调用,那么让i、j、k三个变量哪些因为

2017-06-16 11:22:31 513

原创 C++学习(46)

1.      在声明类时,关键字private/public/protected出现任意次数。(正确) 2. 最大公约数的最常用的算法是欧几里得算法,也称为辗转相除法.问题定义为求i和j的最大公约数gcd(i,j),其中i和j是整数,不妨设i>j. 算法可以递归的表示:1).如果j能整除i,那么gcd(i,j)=j;2).j不能整除i,令r=i%j,那么gcd(i,j

2017-06-16 10:42:08 613

转载 区块链2.0:智能合约

区块链2.0:智能合约区块链2.0是对整个市场的去中心化,利用区块链技术来转换许多不同的资产而不仅仅是比特币,通过转让来创建不同资产单元的价值。 区块链技术的去中心化账本功能可以被用来注册、确认、转移各种不同类型的资产及合约。所有的金融交易都可以被改造成在区块链上使用,包括股票、私募股权、众筹、债券、对冲基金和所有类型的金融衍生品:期货、期权等。 金融服务:区块链的

2017-06-15 21:03:57 8127

转载 区块链1.0:货币

区块链1.0:货币 区块链1.0应用以比特币为代表,为了解决货币和支付手段的去中心化A:技术堆栈从技术角度讲,比特币有三层:区块链、协议、货币第一层是底层技术,即区块链。区块链是去中心化的、公开透明的交易记录总账—其数据库由所有网络的节点共享的,由矿工更新,由全民监督,但没有人真正拥有和控制这个数据库。第二层是协议—区块链上进行资金转账的软件系统第三层是货币本身,比如比

2017-06-15 19:55:45 564

原创 快速上手MySql && MySql GUI工具 SQLyog Community (7)

/*数据库的设计(1)当数据库比较复杂时,需要我们设计数据库(2)良好的数据库设计:1)节省数据的存储空间2)能够保证数据的完整性3)方便进行数据库应用系统的开发软件项目开发周期:1)需求分析阶段:分析客户业务和数据处理需求;2)概要设计阶段:设计E-R模型(概念模型),确认绣球信息正确性和完整;3)详细设计阶段:将E-R模型转换为多张表(物理模型)

2017-06-15 17:19:41 523 2

原创 快速上手MySql && MySql GUI工具 SQLyog Community (6)

(本节内容主要是:索引与视图)/*索引1)模式中的一个数据库对象2)作用:在数据库中用来加速对表的查询3)通过使用快速路径访问方法快速定位数据,减少了磁盘的I/O4)与表独立存放,但不能独立存在,必须属于某个表5)由数据库自动维护,表被删除时,该表上的索引自动被删除6)索引的作用类似于书的目录,几乎没有一本书没有目录,因此几乎没有一张表没有索引怎样创建索

2017-06-15 16:02:29 495

原创 快速上手MySql && MySql GUI工具 SQLyog Community (5)

(本节内容主要是多表连接与子查询)/*多表连接查询1)使用单个SELECT语句从多个表中取出相关的数据,通过多表之间关系,构建相关数据的查询。2)多表连接通常是建立在相互关系的父子表上的。3)SQL1999标准中多表连接的语法。SELECT...FROM join_tableJOIN_TYPE join_tableON join_conditionWHERE

2017-06-15 15:12:53 490

原创 C++学习(45)

1.p1和p2都指向常量字符串,在常量区,所以不能对其进行操作;改为数组即可,但是用字符串初始化数组时要记得将数组长度加1,因为字符串默认的末尾有一个‘\0’;第二点要注意的是,strcat函数的p1要有足够的空间来容纳p1和p2连接后的串长。修改为以下代码将可以:char p1[7]="123";char p2[]="ABC";char str[50]="xyz";str

2017-06-15 11:11:34 387

原创 快速上手MySql && MySql GUI工具 SQLyog Community (4)

/*一、常用函数:1)字符串函数#连接字符串SELECT * FROM tb_dept;SELECT CONCAT(NAME,loc) FROM tb_dept;#upper转换大写#length返回字符串长度#substr(str,pos,n)从str字符串中从pos位置开始的n个位置复制2)数值函数3)日期和时间函数now();返回当前日期和时间

2017-06-14 22:14:47 420

原创 快速上手MySql && MySql GUI工具 SQLyog Community (3)

(本节内容主要是DML语言)/*有关数据表的DML操作:INSERT INTODELETE、TRUNCATEUPDATESELECT(条件查询、查询排序、聚合函数、分组查询)多表链接和子查询INSERT语句插入数据必须先掺入tb_emp,因为tb_emp有外键约束*/CREATE TABLE tb_dept(id INT PRIMAR

2017-06-14 18:53:05 330

原创 快速上手MySql && MySql GUI工具 SQLyog Community (2)

/*约束.约束是在表上强制执行的数据校验规则.约束主要用于保证数据库的完整性。.当表中数据有相互依赖性时,可以保护相关的数据不被删除。.大部分数据库保护以下五类完整性约束:NOT NULL、UNIQUE KEY唯一键、PRIMARY KEY 主键、FOREIGN KEY外键、CHECK检查。.约束作为数据库对象,存放在系统表中,也有自己名字。.创建约束时机:

2017-06-14 16:03:14 495

原创 C++学习(44)

1.分析下列程序:#include#include#includeusing namespace std;int main(int argc,char **argv) { struct s{ int x:3; int y:4; int z:5; double a; }; cout<<sizeof(s); return 0;}分析:需

2017-06-14 12:44:34 180

原创 C++学习(43)

1.  分析下列程序:出错。#include#include#includeusing namespace std;int main() { char*p1="123",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n",str); return 0;}分析:原代码有错:p1和p2

2017-06-14 10:40:58 482

原创 C++学习(42)

1.如果一个类中声明了纯虚函数,其派生类中没有对该函数定义,那该函数在派生类中仍为纯虚函数,凡是包含纯虚函数的类都是抽象类。通常重载函数调用的依据是函数名、参数类型、参数个数。 类的静态成员是属于类的而不是属于哪个对象的,因此可以说是所有对象所共有的。 内联函数是在编译时将目标代码插入的。 2.“子类”和“子类型”是不同的,替换原则只适合于"子类型"关系,而一般编程

2017-06-13 12:38:36 296

原创 C++学习(41)

1.  源码->(扫描)->标记->(语法分析)->语法树->(语义分析)->标识语义后的语法树->(源码优化)->中间代码->(代码生成)->目标机器代码->(目标代码优化)->最终目标代码。2.  源代码-->预处理-->编译-->优化-->汇编-->链接-->可执行文件汇编阶段把 汇编语言代码/中间代码 翻译成目标机器指令。对于被翻译系统处理的每一个C语言源程序,都将最终

2017-06-13 11:14:41 277

原创 part1 算法分析与程序设计基础

1.算法特征:输入性(0个或多个输入)输出性(1个或多个输出)确定性(任何条件下,算法只有唯一执行路径)有穷性可行性 2.判断一个算法好坏的标准:正确性、可读性、健壮性、效率 3、算法描述:自然语言、框图、伪代码、程序设计语言(程序=数据结构+算法)。 4.C++程序文件分为4个部分:预处理指令、全局说明、程序主函数、用户自定义函数。 cer

2017-06-12 21:45:20 626

原创 快速上手MySql && MySql GUI工具 SQLyog Community

根据《疯狂软件MySql视频》所讲,总结内容如下:1.中文开发语言建议GBK2.Service Name默认为MySql,删除mysql服务器后重装如果出现问题,可以设置其他的Service Name3.默认安装文件在C:\Program Files\MySQL\MySQL Server 5.54.可以查看my.ini文件,如果需要更改语言设置,

2017-06-12 19:33:30 1257

原创 C++学习(40)

1.  分析下列程序(1)#include#includeusing namespace std;int main() { int*(*a)[3][4]={0}; cout<<sizeof(*a);}(2)#include#includeusing namespace std;int main() { int*a[3][4]={0}; cout<<sizeof

2017-06-12 11:42:12 313

原创 C++学习(39)

1.抽象类是不完整的,它只能用作基类。在面向对象方法中,抽象类主要用来进行类型隐藏和充当全局变量的角色。 抽象类具有以下特性:1)抽象类不能实例化。2)抽象类可以包含抽象方法和抽象访问器。3)不能用sealed修饰符修饰抽象类,因为这两个修饰符的含义是相反的。采用sealed 修饰符的类无法继承,而abstract修饰符要求对类进行继承。4)从抽象类派生的非抽象

2017-06-11 10:19:04 202

原创 野指针

野指针,也就是指向不可用内存区域的指针。通常对这种指针进行操作的话,将会使程序发生不可预知的错误。“野指针”不是NULL指针,是指向“垃圾”内存的指针。野指针的成因主要有两种:(1)、指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存

2017-06-11 10:15:41 263

MySql必知必会

MySql必知必会·MySql必知必会MySql必知必会MySql必知必会MySql必知必会MySql必知必会MySql必知必会MySql必知必会MySql必知必会MySql必知必会

2017-09-04

快速上手MySql && MySql GUI工具 SQLyog Community

快速上手MySql

2017-06-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除