自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (2)
  • 收藏
  • 关注

原创 C++初始化之超级大坑

. . };. . . };. . . };0 , 0 }));0 , 0 }));0 , 0 }));代码二是我惯有的初始化方法,但是放到class中就会报错,然我百思不得其解,查了一哈才知道:错误原因是:编译器无法区分该语句是成员变量声明还是成员函数声明。解决办法是:消除歧义。. . . };

2023-03-28 15:04:56 306 1

转载 【译】【转发】把STL容器放入共享内存

昨天在上篇blog里描写了如何把STL容器放到共享内存里去,不过由于好久不写blog,发觉词汇组织能力差了很多,不少想写的东西写的很零散,今天刚好翻看自己的书签,看到一篇挺老的文章,不过从共享内存到STL容器讲述得蛮全面,还提供了学习的实例,所以顺便翻译过来,并附上原文地址。共享内存(shm)是当前主流UNIX系统中的一种IPC方法,它允许多个进程把同一块物理内存段(segment)映射(map)到它们的地址空间中去。

2023-03-13 16:51:49 897

原创 1520 问题 D: 蓝桥杯算法提高VIP-开灯游戏

有9盏灯与9个开关,编号都是1~9。每个开关能控制若干盏灯,按下一次会改变其控制的灯的状态(亮的变成不亮,不亮变成亮的)。具体如下:第一个开关控制第二,第四盏灯;第二个开关控制第一,第三,第五盏灯;第三个开关控制第二,第六盏灯;第四个开关控制第一,第五,第七盏灯;第五个开关控制第二,第四,第六,第八盏灯;第六个开关控制第三,第五,第九盏灯;第七个开关控制第四,第八盏灯;第八个开关控制第五,第七,第九盏灯;第九个开关控制第六,第八盏灯。开始时所有灯都是熄灭的,开关是关闭着的。

2022-11-02 12:25:31 168

转载 C++ function

类模版std::function是一种通用、多态的函数封装。std::function的实例可以对任何可以调用的目标实体进行存储、复制、和调用操作,这些目标实体包括普通函数、Lambda表达式、函数指针、以及其它函数对象等。std::function对象是对C++中现有的可调用实体的一种类型安全的包裹(我们知道像函数指针这类可调用实体,是类型不安全的)。

2022-10-09 14:50:08 3451 1

原创 【数据结构】【平衡二叉树AVL】【代码实现】

平衡二叉树,是一种二叉排序树,其中每一个结点的左子树和右子树的高度差至多等于1。平衡因子(BF)[Balance Factor]:平衡二叉树上左子树的深度减去右子树的深度的值。最小不平衡子树:距离插入结点最近的,且平衡因子的绝对值超过1的结点为根的子树如图:以结点58为根的树是该树的最小不平衡子树。

2022-10-04 11:34:29 184

原创 十大经典排序算法(希尔排序、堆排序、计数排序、桶排序和基数排序)

桶排序的时间复杂度,取决于对各个桶之间数据进行排序的时间复杂度,因为其它部分的时间复杂度都为O(n).很显然,桶划分的越小各个桶之间数据越少,排序所用的时间也会越少,但相应的空间消耗会增大。......

2022-08-13 09:28:35 1417

原创 十大经典排序算法(冒泡排序、选择排序、插入排序、快速排序、归并排序)

例如对于含有 n 个记录的无序表,首先默认表中每个记录各为一个有序表(只不过表的长度都为 1),然后进行两两合并,使 n 个有序表变为 ⌈n/2⌉ 个长度为 2 或者 1 的有序表(例如 4 个小有序表合并为 2 个大的有序表),通过不断地进行两两合并,直到得到一个长度为 n 的有序表为止。这种归并排序方法称为:2-路归并排序。本节介绍一种不同于插入排序和选择排序的排序方法——归并排序,其排序的实现思想是先将所有的记录完全分开,然后两两合并,在合并的过程中将其排好序,最终能够得到一个完整的有序表。.....

2022-08-11 09:07:41 1743

原创 【数据结构】【二叉排序树BST】【代码实现】

二叉搜索树、二叉查找树、删除二叉排序树的节点。

2022-08-09 18:36:11 343

原创 6-12 二叉搜索树的操作集(30分)

本题要求实现给定二叉搜索树的5种常用操作。函数Insert将X插入二叉搜索树BST并返回结果树的根结点指针;函数Delete将X从二叉搜索树BST中删除,并返回结果树的根结点指针;如果X不在树中,则打印一行NotFound并返回原树的根结点指针;函数Find在二叉搜索树BST中找到X,返回该结点的指针;如果找不到则返回空指针;函数FindMin返回二叉搜索树BST中最小元结点的指针;函数FindMax返回二叉搜索树BST中最大元结点的指针。...

2022-08-09 16:01:21 136

原创 6-11 先序输出叶结点(15分)

本题要求按照先序遍历的顺序输出给定二叉树的叶结点。函数接口定义:其中BinTree结构定义如下:函数应按照先序遍历的顺序输出给定二叉树BT的叶结点,格式为一个空格跟着一个字符。裁判测试程序样例:输出样例(对于图中给出的树):完整的代码...

2022-08-08 19:47:30 251

原创 6-10 二分查找(20分)

本题要求实现二分查找算法。是用户传入的一个线性表,其中元素可以通过>、==、

2022-08-08 18:08:26 109

原创 6-9 二叉树的遍历(25分)

本题要求给定二叉树的4种遍历。``要求4个函数分别按照访问顺序打印出结点的内容,格式为一个空格跟着一个字符。

2022-08-05 21:30:09 137

原创 6-8 求二叉树高度(20分)

本题要求给定二叉树的高度。要求函数返回给定二叉树BT的高度值。输出样例(对于图中给出的树):4。

2022-08-05 20:09:28 190

原创 【数据结构】【链表】【不带头结点】【纯C代码实现】

链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态,换句话说,使用链表存储的数据元素,其物理存储位置是随机的。

2022-08-03 17:37:47 138

原创 【数据结构】【链表】【带头结点】【纯C代码实现】

链表,别名链式存储结构或单链表,用于存储逻辑关系为 "一对一" 的数据。与顺序表不同,链表不限制数据的物理存储状态,换句话说,使用链表存储的数据元素,其物理存储位置是随机的。

2022-08-03 17:33:58 151

原创 MyString初级

【代码】MyString初级。

2022-08-03 17:07:03 108

原创 6-7 在一个数组中实现两个堆栈 (20分)

本题要求在一个数组中实现两个堆栈。其中Tag是堆栈编号,取1或2;MaxSize堆栈数组的规模;注意:如果堆栈已满,Push函数必须输出“Stack Full”并且返回false;如果某堆栈是空的,则Pop函数必须输出“”(其中Tag是该堆栈的编号),并且返回ERROR。1e8。...

2022-08-02 18:09:57 184

原创 6-6 带头结点的链式表操作(20分)

本题要求实现带头结点的链式表操作集。创建并返回一个空的线性表;返回线性表中X的位置。若找不到则返回ERROR;将X插入在位置P指向的结点之前,返回true。如果参数P指向非法位置,则打印“WrongPositionforInsertion”,返回false;将位置P的元素删除并返回true。若参数P指向非法位置,则打印“WrongPositionforDeletion”并返回false。NULL。...

2022-08-02 15:27:34 93

原创 6-5 链式表操作集(20分)

本题要求实现链式表的操作集。返回线性表中首次出现X的位置。若找不到则返回ERROR;将X插入在位置P指向的结点之前,返回链表的表头。如果参数P指向非法位置,则打印“WrongPositionforInsertion”,返回ERROR;将位置P的元素删除并返回链表的表头。若参数P指向非法位置,则打印“WrongPositionforDeletion”并返回ERROR。NULL/*你的代码将被嵌在这里*/...

2022-08-02 14:40:48 76

转载 6-4 链式表的按序号查找(10分)

本题要求实现一个函数,找到并返回链式表的第K个元素。L是给定单链表,函数FindKth要返回链式表的第K个元素。如果该元素不存在,则返回ERROR。-1。

2022-07-30 16:17:11 129

原创 6-3 求链式表的表长(10分)

本题要求实现一个函数,求链式表的表长。L是给定单链表,函数Length要返回链式表的长度。5。

2022-07-30 15:43:16 194

原创 6-2 顺序表操作集(20分)

本题要求实现顺序表的操作集。创建并返回一个空的线性表;返回线性表中X的位置。若找不到则返回ERROR;将X插入在位置P并返回true。若空间已满,则打印“FULL”并返回false;如果参数P指向非法位置,则打印“ILLEGALPOSITION”并返回false;将位置P的元素删除并返回true。若参数P指向非法位置,则打印“POSITIONPEMPTY”(其中P是参数值)并返回false。5-1。......

2022-07-30 14:35:54 183

原创 6-1 单链表逆转 (20分)

本题要求实现一个函数,将给定的单链表逆转。L是给定单链表,函数Reverse要返回被逆转后的链表。

2022-07-30 13:32:01 516

原创 【数据结构】【顺序表】【纯C代码实现】

【数据结构】【顺序表】【纯C代码实现】顺序表,全名顺序存储结构,是线性表的一种。线性表用于存储逻辑关系为“一对一”的数据,顺序表自然也不例外。不仅如此,顺序表对数据的物理存储结构也有要求。顺序表存储数据时,会提前申请一整块足够大小的物理空间,然后将数据依次存储起来,存储时做到数据元素之间不留一丝缝隙。......

2022-07-26 16:34:27 377

原创 数据结构概述

数据结构,直白地理解,就是研究数据的存储方式。计算机要处理现实世界的信息,首先要做的就是把现实世界的的信存储到计算机中,只有把现实世界的信息存储到计算中计算机才有办法处理这些数据,现实世界的信息不但有信息本身包含的数据而且数据之间还有关系。...

2022-07-23 16:13:24 226

原创 C语言预处理命令

什么是预处理命令?源文件包含 宏定义#define #、 ##、 @#、 #undef macro body 宏展开过程 可变参的宏!!!预定义的宏 条件编译 **#if,#else,#elif和#endif**#ifdef和 #ifndef 使用defined #line 与 #error什么是预处理命令?C语言源文件要经过编译、链接才能生成可执行程序:编译(Compile)会将源文件(.c文件)转换为目标文件。对于 VC/VS,目标文件后缀为.obj;对于GCC,目标文件后缀为.......

2022-07-14 17:31:40 3277

原创 高质量程序设计指南C++/C试题

附录A C++/C试题一、请计算sizeof表达式和strlen表达式的值。(10分)二、请填写bool、float、指针变量与“零值”比较的if语句。(10分)三、简答题。(20分)四、有关内存的思考题。(20分)五、类型转换。(5分)六、编写strcpy函数。(10分)七、编写类String的普通与拷贝构造函数、析构函数以及赋值函数。(25分)假设本试题均为Windows NT下的32位C++ 程序。本试题仅用于考查C++/C程序员的基本编程技能,不涉及数据结构、算法,以及深奥的语法。考试成绩能反映出

2022-07-11 22:02:57 372

原创 C语言输入/输出流和文件操作【二】

由于不同的编译器对FILE结构体类型的实现方案不同 在此仅以vs 2012 stdio.h中的FILE结构体为例:缓冲区 待完成!!!文本文件文件通常用来保存肉眼可见的内容,例如:.txt、.c、.dat等文件,我们通过文本编辑器打开这些文件,可以看懂文件的内容。二进制文件通常用来保存视频、图片、程序等内容,用文本编辑器打开这些文件,你将会看到一堆乱码。但从物理存储的本质上是相同,都是二进制编码,我们之所以能看懂文本文件的内容,是因为文本文件中采用的是 ASCII、UTF-8、GBK 等字符编码,文本编..

2022-07-02 16:22:18 823

原创 C语言输入/输出流和文件操作【一】

文件是什么?流是什么?文本文件与二进制文件的区别?C语言的文件操作打开与关闭文件 文件的读写 以字符形式读写文件 以字符串形式读写文件 二进制方式读取文件 格式化读写文件 随机读写文件参考文献...............

2022-06-29 22:47:04 3192 1

原创 N皇后问题

N皇后问题

2022-06-19 00:07:48 73

原创 结构体的对齐与偏移量的计算

结构体对齐规则(三条)为什么需要字节对齐指令对齐在设计结构体时,我们既要满足对齐又要节省空间,如何做?不定义结构体变量,如何计算结构体成员的相对偏移量?如何判断是大端存放,还是小段存放?方法一:字符指针判断方法二:联合体判断对齐规则(三条)结构体变量的首地址,必须是结构体变量中“最大基本数据类型成员所占字节数”的整数倍。结构体变量中每个成员相对于结构体首地址的偏移量,都是该成员基本数据类型所占字节数的整数倍。结构体变量的总大小,为结构变量中“最大基本数据类型成员所占字节数”的整数倍。struc

2022-05-10 11:22:30 717

原创 【算法竞赛从入门到精通】【基础算法】

贪心法的基本思想 - 如何判断一个题目能用贪心法?常见问题-最少硬币问题-活动安排问题(区间调度问题)-区间覆盖问题-最优装载问题-多机调度问题-Huffman编码- 模拟退火-使用分治法的题目特征-分治法法的解题步骤-归并排序-归并排序的主要步骤-归并排序的应用-逆序对问题-快速排序.........

2022-04-26 14:32:36 1512

原创 C/C++语言中的几个区别

指针和引用的区别#define 和 inline 的区别为什么函数可进行重载

2022-04-25 17:09:59 1036

原创 C|函数调用堆栈

cpu中的寄存器eax、ebx、ecx、edxebp、esp、eip内存布局和函数调用机制内存布局函数调用机制cpu中的寄存器eax、ebx、ecx、edxEAX 是"累加器"(accumulator), 它是很多加法乘法指令的缺省寄存器。EBX 是"基地址"(base)寄存器, 在内存寻址时存放基地址。ECX 是计数器(counter), 是重复(REP)前缀指令和LOOP指令的内定计数器。EDX 则总是被用来放整数除法产生的余数。ebp、esp、eip

2022-04-25 15:14:24 711

原创 第十二届蓝桥杯省赛(cc++真题部分题解)

计算机中存储单位位(bit)<其次字节(byte)<KB<MB<GB<TB1B(byte,字节)= 8 (bit,位);1KB=1024B(字节)1MB=1024KB1GB=1024MB1TB=1024GB注意:位是最小的单位字节是最基本单位一个英文字所需要1B,而一个汉字需要2Bint main(){ long long a =256*1024*1024/32*8; cout << a;////67108864 ..

2022-03-28 16:18:38 573

原创 算法基础——【枚举】

枚举完美立方生理周期完美立方

2022-03-28 16:16:14 138

原创 算法基础-【动态规划】

动态规划一前言数字三角形 The Triangle([poj1163](http://poj.org/problem?id=1163))递归解法递推解法最长上升子序列LIS([百练2757](http://bailian.openjudge.cn/practice/2757/))题解最长公共子序列LCS([poj458](http://poj.org/problem?id=1458))个人题解前言MOOK程序设计与算法(二)算法基础-郭伟-----学习笔记数字三角形 The Triangle(po

2022-03-15 15:35:19 267

原创 C/C++学习笔记

目录my_strcpy() my_strlen()my_strcmp() my_strcat()my_memcpy( ) my_memset( ) my_strchr( ) my_strstr()my_memmove() my_atoi() bin_search()char a[ ]与char* a的区别const int* / int* const / const int* const/void*指针数组与数组指针 以及 多

2022-03-07 22:31:48 535

原创 【并查集(Disjointed Set)简介】

并查集(Disjointed Set)是一种非常精巧而实用的数据结构,用于处理不相交集合的合并、查找经典应用:连通性判断,最小生成树Kruskal算法,最近公共祖先应用背景1 “帮派”有n个人,他们属于不同的帮派;如果1号、2号是朋友,1、3号也是朋友,那么他们属于一个帮派;问有多少个帮派,每人属于哪

2022-01-22 20:44:18 821

原创 【数据库原理】-【数据库系统概述】

信息、数据、数据处理与数据管理的基本概念;数据管理技术发展的三个阶段及各自的优缺点;数据库系统主要包括数据库、数据库用户、计算机硬件系统和计算机软件系统等几部分;数据库系统内部的体系结构:三级模式结构;数据库系统的三级抽象和二级映象保证了数据库系统的逻辑独立性和物理独立性;层次模型、网状模型、关系模型和面向对象模型。数据库领域新技术

2022-01-06 23:57:04 2666

第十三届蓝桥杯大赛软件赛真题_CB.zip

第十三届蓝桥杯大赛软件赛真题_CB.zip

2022-04-30

第十二届蓝桥杯大赛软件赛省赛_CB.pdf

第十二届蓝桥杯大赛软件赛省赛_CB.pdf

2022-04-30

空空如也

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

TA关注的人

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