上一页 1 ··· 4 5 6 7 8 9 10 下一页
摘要: 逻辑结构上一个挨一个的数据,在实际存储时,并没有像顺序表那样也相互紧挨着。恰恰相反,数据随机分布在内存中的各个位置,这种存储结构称为线性表的链式存储。 由于分散存储,为了能够体现出数据元素之间的逻辑关系,每个数据元素在存储的同时,要配备一个指针,用于指向它的直接后继元素,即每一个数据元素都指向下一个 阅读全文
posted @ 2018-05-11 17:41 程序员进阶笔记 阅读(36063) 评论(0) 推荐(1)
摘要: 逻辑结构上呈线性分布的数据元素在实际的物理存储结构中也同样相互之间紧挨着,这种存储结构称为线性表的顺序存储结构。 也就是说,逻辑上具有线性关系的数据按照前后的次序全部存储在一整块连续的内存空间中,之间不存在空隙,这样的存储结构称为顺序存储结构。 使用顺序存储结构存储的数据,第一个元素所在的地址就是这 阅读全文
posted @ 2018-05-11 17:25 程序员进阶笔记 阅读(7034) 评论(0) 推荐(1)
摘要: 本章讲解了最基本的数据结构——线性表。从逻辑上讲,线性表中的数据是依次排列的,就像小学生排队过马路一样,彼此手拉手,每份数据的前面和后面各有一份数据,从整体上看连成了“一条线”。 线性表的概念:1分钟了解什么是线性表 线性表是数据结构中最简单的数据存储结构,可以理解为“线性的表”。线性,是说数据在逻 阅读全文
posted @ 2018-05-11 17:11 程序员进阶笔记 阅读(1296) 评论(0) 推荐(0)
摘要: 算法,即解决问题的方法。同一个问题,使用不同的算法,虽然得到的结果相同,但是耗费的时间和资源是不同的。 就比如要拧一个螺母,使用扳手还是钳子是有区别的,虽然使用钳子也能拧螺母,但是没有扳手好用。“条条大路通罗马”,解决问题的算法有多种,这就需要判断哪个算法“更好”。 算法VS程序 很多人误以为程序就 阅读全文
posted @ 2018-05-11 17:07 程序员进阶笔记 阅读(1411) 评论(0) 推荐(0)
摘要: 本节开始将带领大家系统地学习数据结构,作为一门计算机专业大二学生的必修课程,该课程面对的目标人群为初步具备基本编程能力和编程思想的程序员(大一接触了 C 语言或者 C++)。通过系统地学习数据结构,可以提高程序员分析问题和解决问题的能力。 首先,先来揭开数据结构的神秘面纱,看看什么是数据结构。 数据 阅读全文
posted @ 2018-05-11 16:20 程序员进阶笔记 阅读(3005) 评论(0) 推荐(2)
摘要: 从基类派生出派生类,派生类继承基类的继承方式有三种:public、protected和private。在未指定的情况下编译器会默认继承方式为protected或private方式。1) public继承方式 • 基类中所有public成员在派生类中为public属性; • 基类中所有protecte 阅读全文
posted @ 2018-04-20 10:25 程序员进阶笔记 阅读(326) 评论(0) 推荐(0)
摘要: 1. 构造函数用来对类对象进行初始化,它完成对内存空间的申请、赋初值等工作。 2. 析构函数主要是用来做清理工作的。 补充:函数名或变量名前面有"::"但是没有类名,说明这是全局变量或公共函数,并且不属于任何命名空间。仅此而已。 1、构造函数和析构函数为什么没有返回值? 构造函数和析构函数是两个非常 阅读全文
posted @ 2018-04-20 10:24 程序员进阶笔记 阅读(299) 评论(0) 推荐(0)
摘要: 先来说说C和C++中结构体的不同 a) C语言中的结构体不能为空,否则会报错(??) b) C语言中内存为空结构体分配大小为0,C++中为结构体和类分配大小为1byte c) C语言中的结构体只涉及到数据结构,而不涉及到算法,也就是说在C中数据结构和算法是分离的。换句话说就是C语言中的结构体只能定义成员变量,但是不能定义成员函数。然而在C++中既可... 阅读全文
posted @ 2018-04-20 10:21 程序员进阶笔记 阅读(1435) 评论(0) 推荐(0)
摘要: 在C语言中,动态分配和释放内存的函数是malloc、calloc和free,而在C++语言中,new、new[]、delete和delete[]操作符通常会被用来动态地分配内存和释放内存。 需要注意的是new、new[]、delete和delete[]是操作符,而非函数;new和delete也是C++的关键字。 操作符new用于动态分配单个空间,而new[]则是用于动态分配一个数组,操作符d... 阅读全文
posted @ 2018-04-20 10:15 程序员进阶笔记 阅读(179) 评论(0) 推荐(0)
摘要: C++语言新增关键字 inline,用于将一个函数声明为内联函数。在程序编译时,编译器会将内联函数调用处用函数体替换,这一点类似于C语言中的宏扩展。 采用内联函数可以有效避免函数调用的开销,程序执行效率更高。使用内联函数的缺点就是,如果被声明为内联函数的函数体非常大,则编译器编译后程序的可执行码将会变得很大。另外,如果函数体内出现循环或者其它复杂的控制结构的时候,这个时候处理这些复杂控制结构所... 阅读全文
posted @ 2018-04-20 10:13 程序员进阶笔记 阅读(186) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 下一页