- 博客(14)
- 收藏
- 关注
原创 简版C语言测试框架实现
简版C语言测试框架实现一、什么是单元测试框架?二、代码一、什么是单元测试框架?对于单元测试框架来讲,它主要完成以下几件事。提供用例组织与执行:测试用例只有几条时,可以不考虑用例组织,但是用例达到成百上千时,大量的测试用例堆砌在一起,就产生了扩展性与维护性等问题提供丰富的断言方法:不论是功能测试,还是单元测试,在用例执行完之后都需要将实际结果与预期结果相比较(断言),从而断定用例是否执行通过。单元测试框架一般提供丰富的断言方法。例如:判断相等/不等、包含/不包含、True/False的断言方法等提
2020-11-09 20:53:07 679
原创 Size Blanced Tree
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档Size Blanced Tree介绍一、自平衡条件二、旋转操作三、旋转的触发四、代码介绍Size Blanced Tree 是平衡二叉树的一种。每个结点所在子树的结点个数不小于其兄弟的两个孩子所在子树的结点个数,并且在插入时才会触发平衡调整。它还可以用来求第k小元素一、自平衡条件对于每个结点 tt,同时满足size[right[t]]≥ max(size[left[left[t]]],size[right[left[t]]])
2020-11-07 18:41:55 252
原创 平衡二叉查找树
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档平衡二叉查找树介绍一、自平衡条件二、旋转操作三、旋转的触发介绍计算机科学发展至今,已经出现了若干种平衡二叉查找树,其中最先发明的是 AVL 树。所有平衡树基本由以下三个特征组成:1.自平衡条件2.旋转操作3.旋转的触发平衡树通过设置合理的自平衡条件,使得二叉排序树的查找、插入等操作的性能不至于退化到 O(n)O(n),并且在进行二叉排序树的查找、插入等操作时进行判断,如果满足其中某个旋转的触发条件,则进行对应的旋转操作。一
2020-11-06 20:18:35 373
原创 C语言顺序存储队列
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档C语言顺序存储队列一、什么是队列的顺序存储二、程序一、什么是队列的顺序存储1、队列是只允许在一端进行插入操作,另一端进行删除操作的线性表。2、使用数组来存取队列元素的结构叫队列的顺序存储结构。3、假设一个队列有n个元素,则顺序存储的队列需要建立一个大于n的数组,并把队列的所有元素存储在数组的前n个单元,数组下标为0的一端即为对头。(1)入队,就是在队尾追加一个元素,不需要移动任何元素,所以时间复杂度为O(1).(2)出队是在队
2020-10-25 17:01:36 293
原创 C语言链表
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档C语言链表一、pandas是什么?1.介绍2.具体思路二、程序1.代码2.运行结果一、pandas是什么?1.介绍链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。2.具体思路我们可以设计一个链表结构体,记录链表的头
2020-10-15 10:20:49 95
原创 C语言动态数组
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档C语言动态数组一、动态数组1.动态数组介绍1.具体思路二、程序1.代码1.运行结果一、动态数组1.动态数组介绍在实际的编程中,往往会发生这种情况,即所需的内存空间取决于实际输入的数据,而无法预先确定。对于这种问题,用静态数组的办法很难解决。为了解决上述问题,C语言提供了一些内存管理函数,这些内存管理函数结合指针可以按需要动态地分配内存空间,来构建动态数组,也可把不再使用的空间回收待用,为有效地利用内存资源提供了手段。动态数组,是相
2020-10-15 10:08:18 857
原创 Linux动态库的创建和使用方法
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档Linux动态库的创建和使用方法一、动态库是什么?二、动态库的创建和使用1.动态库创建2.动态库的使用一、动态库是什么?动态库也叫共享库(share object),在程序链接的时候作些标记,然后在程序开始启动运行的时候,动态地加载所需库(模块)。特点:1.编译时(链接阶段)仅仅记录用到哪个动态库中的哪个符号(函数),不复制库中代码;2.调用程序不包含库中代码,尺寸小:3. 多个程序可共享同一个库,无论有多少个程序使用该库,程序
2020-09-29 16:21:26 769
原创 素数筛选法与点灯案例
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档素数筛选法与点灯案例一、素数筛选法二、点灯案例1.案例2.思路3.代码一、素数筛选法1.介绍:假设所有待判断的数字的上限是L,声明一个长度为L+1的布尔数组A[L+1]。用这个数组来表示对应下标的数字是不是素数。起初,将数组所有成员标记为1,然后按照某种方法将其中的非素数都标记为0即可2.实现:(1)首先声明一个布尔数组isprime[L+1], 先将isprime[0],isprime[1]置0,再将布尔数组里所有除了2以外的偶
2020-09-28 19:00:12 108
原创 关于git远程和本地仓库的使用
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档关于git远程和本地仓库的使用前言一、git安装二、注册gitee账号,设置ssh公钥三、远程仓库和本地仓库操作前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、git安装1、安装sudo apt-get install git2、基本设置git confi
2020-09-21 20:29:45 132
原创 创建一个通用数组类模板文件
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档创建一个通用数组类模板文件一、创建.hpp文件二、深拷贝与浅拷贝三、代码一、创建.hpp文件二、深拷贝与浅拷贝浅拷贝:简单的赋值拷贝操作深拷贝:在堆区重新申请空间,进行拷贝操作如果只是对指针对象进行简单的赋值操作,那么两个指针会指向同一个堆区对象,可能会引发重复释放堆区空间的问题。解决办法是通过深拷贝,重新申请一个堆区空间并让指针指向他,将旧空间中的数据复制过来。三、代码#pragma once //防止文件重复编译#
2020-09-13 19:51:13 392
原创 const修饰指针
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档const修饰指针一、const修饰指针的三种情况二、分析1.const修饰指针 --- 常量指针2.const修饰常量 --- 指针常量3. const即修饰指针,又修饰常量一、const修饰指针的三种情况const修饰指针 — 常量指针const修饰常量 — 指针常量const即修饰指针,又修饰常量二、分析1.const修饰指针 — 常量指针 const int * p1 = &a;
2020-09-05 14:41:26 1549 2
原创 C语言 逆波兰算法实现计算器(源码)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码
2020-08-24 20:28:37 3293 2
原创 Makefile文件编写和命令(图文)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档@提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档Makefile编写一、示例二、文件构成和解释1.makefile的编写格式2.命令解释三、运行一、示例在需要编译的文件目录下,新建一个名为“makefile”的文件makefile文件内容CC = gccall:main_max main_minmain_max:main_max.c foo.o bar.o $(CC) main_max.c fo
2020-08-23 17:15:53 903
原创 关于Linux环境下字符串和数值型的相互转化问题
关于Linux环境下字符串和数值型的相互转化问题一、字符串转换成整型数C 库函数 - atoi(),atol(),atof()二、字符串转换成整型数C 库函数 - sprintf()一、字符串转换成整型数C 库函数 - atoi(),atol(),atof()1、atoi()atoi()原型: int atoi(const char *str ); C 标准库 - <stdlib.h>函数功能:把字符串转换成整型数。参数str:要进行转换的字符串。返回值:每个函数返回 in
2020-08-16 16:06:03 1369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人