07 2017 档案

摘要:一.stack基本概念 栈是一种 特殊的线性表 栈仅能在线性表的一端进行操作 栈顶(Top):允许操作的一端 栈底(Bottom):不允许操作的一端 stack常用操作 创建栈 销毁栈 清空栈 进栈 出栈 获取栈顶元素 获取栈的大小 二.栈的顺序存储设计与实现 2.1 基本概念 2.2 代码实现 栈 阅读全文
posted @ 2017-07-28 15:25 夜行过客 阅读(245) 评论(0) 推荐(0) 编辑
摘要:一.线性表的基本概念 1.1 线性表定义 线性表(List)是零个或多个数据元素的集合 线性表中的数据元素之间是有顺序的 线性表中的数据元素个数是有限的 线性表中的数据元素的类型必须相同 1.2 数学定义 线性表是具有相同类型的 n( ≥ 0)个数据元素的有限序列 (a1, a2, …, an) a 阅读全文
posted @ 2017-07-20 09:25 夜行过客 阅读(513) 评论(0) 推荐(0) 编辑
摘要:一.算法的概念 算法是特定问题求解步骤的描述 在计算机中表现为指令的有限序列 算法是独立存在的一种解决问题的方法和思想。 对于算法而言,语言并不重要,重要的是思想,也就是说,算法与具体的编程语言无关 二.算法和数据结构的区别 数据结构只是静态的描述了数据元素之间的关系 高效的程序需要在数据结构的基础 阅读全文
posted @ 2017-07-18 11:38 夜行过客 阅读(176) 评论(0) 推荐(0) 编辑
摘要:一.数据结构的起源 计算机从解决数值计算问题到解决生活中的问题现实生活中的问题涉及不同个体间的复杂联系需要在计算机程序中描述生活中个体间的联系数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系,不是研究复杂的算法 二.数据结构的基本概念 数据 – 程序的操作对象,用于描述客观事物 数据 阅读全文
posted @ 2017-07-18 11:20 夜行过客 阅读(242) 评论(0) 推荐(0) 编辑
摘要:演示两个常用的算法:for_each和sort 运行结果: (1)(2)(3)(4)(5) 排序前 1740948824 排序后 0124447889 阅读全文
posted @ 2017-07-13 15:51 夜行过客 阅读(242) 评论(0) 推荐(0) 编辑
摘要:一.概述 是一个线性链表结构,它的数据由若干个节点构成,每一个节点都包括一个信息块(即实际存储的数据)、一个前驱指针和一个后驱指针。它无需分配指定的内存大小且可以任意伸缩,这是因为它存储在非连续的内存空间中,并且由指针将有序的元素链接起来。由于其结构的原因,list 随机检索的性能非常的不好,因为它 阅读全文
posted @ 2017-07-13 14:21 夜行过客 阅读(348) 评论(0) 推荐(0) 编辑
摘要:一.概述 C++队列是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构,与stack刚好相反。 二.常用API 三.示例Demo 运行结果: Teacher, name is: jack, age is: 11current remain num is: 3Teacher, name 阅读全文
posted @ 2017-07-13 11:01 夜行过客 阅读(599) 评论(0) 推荐(0) 编辑
摘要:一.概述 C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,也就是说实现了一个先进后出(FILO)的数据结构。 二.常用API 三.示例Demo 运行结果: current item is: 5remain item size is: 4current item is: 阅读全文
posted @ 2017-07-13 10:19 夜行过客 阅读(381) 评论(0) 推荐(0) 编辑
摘要:安装方法: 我的VS2013装D盘了,安装VA以后,把VA_X.dll替换到下面的程序路径中即可完成破解。 C:\Users\Administrator\AppData\Local\Microsoft\VisualStudio\12.0\Extensions\vtxn14bu.wt2 下载地址: h 阅读全文
posted @ 2017-07-13 09:54 夜行过客 阅读(640) 评论(0) 推荐(0) 编辑
摘要:一.概述 Vectors 包含着一系列连续存储的元素,其行为和数组类似。访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线性时间复杂度。 二.特点 1) 指定一块如同数组一样的连续存储,但空间可以动态扩展。即它可 阅读全文
posted @ 2017-07-12 20:35 夜行过客 阅读(1612) 评论(0) 推荐(0) 编辑
摘要:在C中: main.c module.c 编译没有问题,输出结果: 注意: printxxx并未声明! 在C++中: main.cpp module.cpp 编译也没有问题: 不过,要是把main.cpp文件中的 删掉,在编译的时候就会报错: 提示找不到printxxx这个函数,由此可见,C++对函 阅读全文
posted @ 2017-07-11 10:57 夜行过客 阅读(309) 评论(0) 推荐(0) 编辑
摘要:最近经常看到头文件中有 这样的语句,一直搞不清楚是什么意思,今天终于闹明白了。 1.这种写法的由来 C++比C晚出现,C++代码如果能够调用C语言的代码,那么会更好的利用现有的成果,但是事实上C++代码是无法直接调用C代码的,这是因为C++编译器在编译.cpp文件时生成的函数名与C编译器在编译.c文 阅读全文
posted @ 2017-07-11 09:53 夜行过客 阅读(9388) 评论(0) 推荐(0) 编辑
摘要:一.使用控制符控制输出格式 输出结果: input a:34↙(输入a的值)dec:34 (十进制形式)hex:22 (十六进制形式)oct:42 (八进制形式) China (域宽为)*****China (域宽为,空白处以'*'填充)pi=3.14285714e+00 (指数形式输出,8位小数) 阅读全文
posted @ 2017-07-06 15:05 夜行过客 阅读(19452) 评论(0) 推荐(0) 编辑
摘要:一.static_cast static_cast 只能用于良性转换,这样的转换风险较低,一般不会发生什么意外,如: 二.const_cast const_cast用来去掉表达式的 const 修饰或 volatile 修饰。换句话说,const_cast 就是用来将 const/volatile 阅读全文
posted @ 2017-07-06 10:41 夜行过客 阅读(448) 评论(0) 推荐(0) 编辑
摘要:当以拷贝的方式初始化一个对象时,会调用一个特殊的构造函数,就是拷贝构造函数(Copy Constructor)。 例如: 其中将 Student stu2 = stu1; Student stu3(stu1) 时,就调用了拷贝构造函数。 阅读全文
posted @ 2017-07-06 09:27 夜行过客 阅读(250) 评论(0) 推荐(0) 编辑
摘要:一.转换构造函数 将其它类型转换为当前类类型需要借助转换构造函数(Conversion constructor)。转换构造函数也是一种构造函数,它遵循构造函数的一般规则。转换构造函数只有一个参数。 运行结果: 10 + 20i25.5 + 0i 二.类型转换函数 运行结果: f = 24.6f = 阅读全文
posted @ 2017-07-05 19:34 夜行过客 阅读(777) 评论(0) 推荐(0) 编辑
摘要:当定义一个类时,我们显式地或隐式地指定了此类型的对象在拷贝、赋值和销毁时做什么。一个类通过定义三种特殊的成员函数来控制这些操作,分别是拷贝构造函数、赋值运算符和析构函数。 拷贝构造函数定义了当用同类型的另一个对象初始化新对象时做什么,赋值运算符定义了将一个对象赋予同类型的另一个对象时做什么,析构函数 阅读全文
posted @ 2017-07-05 14:30 夜行过客 阅读(2109) 评论(0) 推荐(0) 编辑
摘要:一.浅拷贝 对于基本类型的数据以及简单的对象,它们之间的拷贝非常简单,就是按位复制内存。例如: b 和 obj2 都是以拷贝的方式初始化的,具体来说,就是将 a 和 obj1 所在内存中的数据按照二进制位(Bit)复制到 b 和 obj2 所在的内存,这种默认的拷贝行为就是浅拷贝,这和调用 memc 阅读全文
posted @ 2017-07-05 11:06 夜行过客 阅读(392) 评论(0) 推荐(0) 编辑
摘要:C++语言本身或者标准库抛出的异常都是 exception 的子类,称为标准异常(Standard Exception)。你可以通过下面的语句来捕获所有的标准异常: 之所以使用引用,是为了提高效率。如果不使用引用,就要经历一次对象拷贝(要调用拷贝构造函数)的过程。exception 类位于 <exc 阅读全文
posted @ 2017-07-05 09:20 夜行过客 阅读(227) 评论(0) 推荐(0) 编辑
摘要:一.在函数模板中使用非类型参数 运行结果: 99, 1010, 20, 30, 40, 501, 2, 3, 4, 5 阅读全文
posted @ 2017-07-04 15:24 夜行过客 阅读(636) 评论(0) 推荐(0) 编辑
摘要:下午写了一份代码: 编译死活通不过,老是报如下错误: 后来只能求助万能的Google,结果原因是: 阅读全文
posted @ 2017-07-04 15:00 夜行过客 阅读(1238) 评论(0) 推荐(0) 编辑
摘要:应用背景: 例如有下面的函数模板,它用来获取两个变量中较大的一个: 请读者注意a > b这条语句,>能够用来比较 int、float、char 等基本类型数据的大小,但是却不能用来比较结构体变量、对象以及数组的大小,因为我们并没有针对结构体、类和数组重载>。另外,该函数模板虽然可以用于指针,但比较的 阅读全文
posted @ 2017-07-04 11:07 夜行过客 阅读(3808) 评论(0) 推荐(0) 编辑
摘要:Java中的泛型编程可以极大的提升编程的效率,比如在android中查找一个控件的ID:标准写法为: 或者: 因为同为查询控件ID,所以上面的写法可以采用泛型编程精简为: 这样在下次使用的时候就可以写成这样: C++中也有类似的东西,不过名字变了,叫模板(template)。 一.函数模板 例:交换 阅读全文
posted @ 2017-07-03 11:24 夜行过客 阅读(271) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示