自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C语言中的多行输入问题

牛客网和LeetCode的竞赛题中经常会遇到多行输入,以前不熟悉这种写程序的方式,初次接触时输入值会有很多问题。一、未明确具体输入行数没有确定的输入行数时,一般要采用Ctrl+Z结束输入,系统会自动输入这些,我们要做的是设置好循环条件即可。具体是每次输入都产生结果还是所有输入完以后再输出结果要看题目要求。如:输入多个字符串,保存在二维数组中,可以采用以下两种方式:1、~scanf方式 char str[10][10];//定义二维数组,保存多个字符串 int i = 0; w

2021-11-15 19:01:50 36049 33

原创 【Linux Shell】基础知识

Shell定义, 命令行提示符; Shell定义,登录Shell相关文件,Shell中的变量类型与变量的引用,单引号' '与双引号" ";变量的删除与检查;Shell中的扩展,大括号扩展{ },命令替换等。

2023-07-25 15:55:14 408

原创 Qt框架概述

什么是Qt;了解QtCreator;如何创建一个Qt项目;Qt项目框架及文件介绍;设置窗口属性;按钮:创建按钮方式,按钮属性设置,对象模型

2023-04-14 16:35:27 4527 1

原创 Linux进程信号

信号的概念;信号的种类;信号的产生,硬件产生,软件产生;发送信号的函数,崩溃程序收到的信号;信号的处理方式;信号的注册,sig位图,sigqueue队列;信号的注销;信号的自定义处理方式,signal函数、sigaction函数以及实现原理;信号的捕捉流程,信号的处理时机,不同处理信号方式的区别;信号的阻塞基本概念、函数接口,实现原理;阻塞实时与非实时信号;自定义信号处理解决僵尸进程,volatile关键字

2023-04-11 15:45:20 783 6

原创 Chitchat项目演示

Chitchat项目演示

2022-10-24 23:59:45 632

原创 C++中的多态——理解虚函数表及多态实现原理

多态的概念,构成条件;虚函数的重写,重写的定义,重写的特殊情况,override和final关键字,区分重写、重载、重定义,抽象类的概念;多态的实现原理,父类对象模型,生成默认构造方法的场景,子类对象模型,多态的调用原理,多继承的虚函数表;继承与多态中的常见问题

2022-09-09 22:22:18 1383 12

原创 C++中的继承(继承基本概念、菱形虚拟继承的对象模型)

继承的概念及定义格式,访问限定符与继承权限;赋值兼容规则;继承中的作用域;子类的默认成员函数,构造函数,拷贝构造函数,赋值运算符重载,析构函数,构造和析构函数调用顺序;继承与友元、静态成员;菱形继承及菱形虚拟继承,菱形继承概念,存在问题,虚拟继承的概念,虚拟继承的模型

2022-09-03 21:16:16 1399 82

原创 【Day_20】公共子串计算

给定两个只包含小写字母的字符串,计算两个字符串的最大公共子串的长度。注:子串的定义指一个字符串删掉其部分前缀和后缀(也可以不删)后形成的字符串。

2022-09-02 22:21:16 125 1

原创 【Day_20】字符串反转

接受一个只包含小写字母的字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)输入一行,为一个只包含小写字母的字符串。输出该字符串反转后的字符串。

2022-08-31 16:42:29 100 2

原创 【Day_19】查找两个字符串a,b中的最长公共子串

查找两个字符串a,b中的最长公共子串。若有多个,输出在较短串中最先出现的那个。注:子串的定义:将一个字符串删去前缀和后缀(也可以不删)形成的字符串。请和“子序列”的概念分开!

2022-08-30 22:21:41 210 4

原创 【C++】stack&和queue(stack、queue、priority_queue、deque)

stack的底层结构,接口使用,模拟实现stack;queue的底层结构及使用,模拟实现queue;priority_queue的底层结构及使用,使用priority_queue保存自定义类型传值和传指针的区别,函数指针和函数对象的用法;priority_queue模拟实现;dequedeque的底层结构,deque的优缺点,以及为什么选择deque作为stack和queue地底层容器...

2022-08-30 17:18:27 741 22

原创 【Day_19】汽水瓶

某商店规定:三个空汽水瓶可以换一瓶汽水,允许向老板借空汽水瓶(但是必须要归还)。小张手上有n个空汽水瓶,她想知道自己最多可以喝到多少瓶汽水。数据范围:输入的正整数满足1≤n≤100 ......

2022-08-25 23:29:18 121 3

原创 【225. 用队列实现栈】三种方法

请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。boolean empty() 如果栈是空的,返回 true;void push(int x) 将元素 x 压入栈顶。// 返回 False。int pop() 移除并返回栈顶元素。int top() 返回栈顶元素。两个队列实现,入栈时搬移元素。两个队列实现,出栈时搬移元素。

2022-08-25 10:37:12 260 10

原创 【C++】list容器模拟实现

list模拟实现主要包括四个类:节点类、迭代器类、反向迭代器类、list类。list底层结构:因为list的底层空间不连续,所以迭代器不能使用原生态的指针,将节点类型的指针封装成类,重载解引用及自增等常用操作。list可以保存多种数据类型,所以这些类都写成类模板。这里对listr容器中的基本方法进行模拟实现

2022-08-22 18:27:03 636 56

原创 【Day_18】字符串通配符

描述问题描述:在计算机中,通配符一种特殊语法,广泛应用于文件搜索、数据库、正则表达式等领域。现要求各位实现字符串通配符的算法。要求:实现如下2个通配符:\*:匹配0个或以上的字符(注:能被\*和?匹配的字符仅由英文字母和数字0到9组成,下同)?:匹配1个字符

2022-08-21 11:59:11 302 5

原创 【Day_18】统计每个月兔子的总数

有一种兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子。例子:假设一只兔子第3个月出生,那么它第5个月开始会每个月生一只兔子。一月的时候有一只兔子,假如兔子都不死,问第n个月的兔子总数为多少?数据范围:输入满足 1≤n≤31。输入一个int型整数表示第n个月。

2022-08-20 23:11:20 696 2

原创 【Day_17】二叉树的镜像

操作给定的二叉树,将其变换为源二叉树的镜像。要求: 空间复杂度 O(n)。本题也有原地操作,即空间复杂度 O(1的解法,时间复杂度 O(n)数据范围:二叉树的节点数 0≤n≤1000 , 二叉树每个节点的值 0≤val≤1000。操作给定的二叉树,将其变换为源二叉树的镜像。

2022-08-20 20:47:17 119

原创 【C++】list容器介绍及使用

list底层结构,构造函数,拷贝构造函数;list的三种遍历方式;insert、erase、swap、resize、remove、remove_if、unique、sort、reverse等接口的使用方法;list迭代器失效问题,list与vector的对比

2022-08-20 17:46:40 4028 42

原创 【Day_17】杨辉三角的变形

构造数阵,将题目描述的数阵用动态二维数组构造出来,找到对应行进行遍历,查找第一个偶数,但是这种方式占用内存过大,所以当数字比较大时,会超出内存限制。以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数、左上角数和右上角的数,3个数之和(如果不存在某个数,认为该数就是0)。例如输入3,则输出2,输入4则输出3,输入2则输出-1。将出现位置结果按取模的下标保存在数组中,可以直接通过取模的结果按下标找到对应出现位置。除了一二行之外,后面偶数出现的规律都为:2、3、2、4……

2022-08-20 09:51:55 294

原创 【Day_16】扑克牌大小

牛客网:扑克牌大小扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A,2各4张,小王1张,大王1张。牌面从小到大用如下字符和字符串表示(其中,小写joker表示小王,大写JOKER表示大王)😃3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER输入两手牌,两手牌之间用“-”连接,每手牌的每张牌以空格分隔,“-”两边没有空格,如:4 4 4 4-joker JOKER请比较两手牌大小,输出较大的牌,如果不存在比较关系则输出ERROR基本规则:(1)输入每手牌可能是个

2022-08-19 22:04:49 220 1

原创 C++模拟实现vector

模拟实现vector,深入了解容器的底层实现原理,熟悉使用;包括迭代器,构造类函数,容量相关操作,size、capacity、empty、resize、reserve等;元素访问,内容修改,push_back,pop_back,insert,erase,clear,swap等...

2022-08-18 12:46:50 527 3

原创 【Day_16】完全数计算

完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。例如:28,它有约数1、2、4、7、14、28,除去它本身28外,其余5个数相加,1+2+4+7+14=28。输入n,请输出n以内(含n)完全数的个数。...

2022-08-16 22:39:55 187 4

原创 【Day_15】查找输入整数二进制中1的个数

一个数和比自己小1的数按位与会消去二进制中的一个1。输入一个正整数,计算它在二进制下的1的个数。数据范围: 1≤n≤ 2^31-1。5的二进制表示是101,有2个1。计算整数二进制中1的个数。

2022-08-16 21:49:17 182 2

原创 vector接口介绍&迭代器失效问题

vector容器接口的介绍及使用,vector在windows和Linux环境下的扩容机制;了解什么是迭代器,迭代器异常问题的原因及解决方法;动态二维数组的定义和使用

2022-08-16 12:12:31 410 8

原创 【Day_15】▲手套

在地下室里放着n种颜色的手套,手套分左右手,但是每种颜色的左右手手套个数不一定相同。但是昏暗的灯光让他无法分辨手套的颜色,只能分辨出左右手。所以他会多拿一些手套,然后选出一双颜色相同的左右手手套。现在的问题是,他至少要拿多少只手套(左手加右手),才能保证一定能选出一双颜色相同的手套。给定颜色种数n(1≤n≤13),同时给定两个长度为n的数组left,right,分别代表每种颜色左右手手套的数量。数据保证左右的手套总数均不超过26,且一定存在至少一种合法方案。10(解释:可以左手手套取2只,右手手套取8只).

2022-08-16 10:00:43 92

原创 C++模拟实现string类

string类模拟实现,包括string类接口的使用原理和底层实现方法

2022-08-14 10:41:02 401

原创 【Day_14】▲幸运的袋子

牛客网:幸运的袋子一个袋子里面有n个球,每个球上面都有一个号码(拥有相同号码的球是无区别的)。如果一个袋子是幸运的当且仅当所有球的号码的和大于所有球的号码的积。例如:如果袋子里面的球的号码是{1, 1, 2, 3},这个袋子就是幸运的,因为1 + 1 + 2 + 3 > 1 * 1 * 2 * 3你可以适当从袋子里移除一些球(可以移除0个,但是别移除完),要使移除后的袋子是幸运的。现在让你编程计算一下你可以获得的多少种不同的幸运的袋子。输出如图:以1,1,2,3,5,这一组数据为例,11,112,1

2022-08-13 10:08:09 122 2

原创 C++深浅拷贝及简易string类实现

浅拷贝,深拷贝,写时拷贝VS与GCC中的拷贝方式:Windows VS2022,Linux GCC;简易string类:传统版写法的string类,构造函数,拷贝构造函数,赋值运算符重载,析构函数;现代版写法string类:构造函数,拷贝构造函数,赋值运算符重载函数,析构函数;......

2022-08-11 21:25:56 700

原创 【Day_14】计算日期到天数转换

根据输入的日期,计算是这一年的第几天。保证年份为4位数且日期合法。

2022-08-11 13:17:11 211

原创 【Day_13】▲跳石板

这条石板路要根据特殊的规则才能前进:对于小易当前所在的编号为K的 石板,小易单次只能往前跳K的一个约数(不含1和K)步,即跳到K+X(X为K的一个非1和本身的约数)的位置。本题的核心思想就是从初始位置向后遍历,标记当前位置能跳到的所有石板的最少步数,而当前位置的标记也是之前位置跳到这里的最少步数,一直遍历到目的地,便得到了到达目标石板的最少步数。以4跳到24为例,从4号开始向后走,4号标记为0,表示跳到4号需要0步,从4号石板开始向后遍历,每到一个石板都标记当前石板能挑到的所有石板所需要的最少步数。...

2022-08-10 15:27:35 73

原创 【BM87 合并两个有序的数组】

给出一个有序的整数数组 A 和有序的整数数组 B ,请将数组 B 合并到数组 A 中,变成一个有序的升序数组。这道题是面试中的常考题,核心思想就是从后向前遍历数组,避免数据被覆盖。如果从前往后遍历就需要定义一个数组,会造成空间的浪费。...

2022-08-09 23:05:49 92

原创 string类接口介绍及应用

STL介绍,string类构造方法;:resize,reserve在Windows和Linux环境下的扩容机制,clear的用法;string类对象的下标访问,范围for访问,迭代器,反向迭代器;类对象修改操作,operator+=,erase,swap,assign,insert,replace;string类操作,find&rfind,使用substr截取文件后缀和获取域名,compare;string类非成员函数,getline,swap......

2022-08-09 18:09:13 738

原创 【43. 字符串相乘】

给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。

2022-08-08 20:06:19 130 1

原创 【415. 字符串相加】

给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和并同样以字符串形式返回。你不能使用任何內建的用于处理大整数的库(比如 BigInteger), 也不能直接将输入的字符串转换为整数形式。......

2022-08-08 18:17:24 109 1

原创 C++模板——模板特化、分离编译

泛型编程与模板,函数模板的概念和实例化,类模板,顺序表类模板;非类型模板参数的改念;类模板的全特化与偏特化;模板为什么不支持分离编译,.hpp文件的应用

2022-08-04 23:22:40 620 2

原创 C++内存管理

C/C++内存分布,C语言中的动态内存管理,C++动态内存管理,new和delete的使用,new和delete对自定义类型的操作,operate new和operate delete,new的底层实现原理,delete底层实现原理,定位new表达式,,malloc/free和new/delete区别内存泄漏及其危害,如何一次在堆上申请4G的内存......

2022-08-03 12:47:24 231 2

原创 【Day_13】参数解析

请编写一个参数解析程序,实现将命令行各个参数解析出来

2022-08-02 09:39:02 84

原创 【Day_12】查找组成一个偶数最接近的两个素数

牛客网:查找组成一个偶数最接近的两个素数任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对。数据范围:输入的数据满足 4≤n≤1000输出输出...

2022-08-01 14:47:34 88

原创 C++入门知识——构造函数初始化列表、static与友元

构造函数的初始化列表,explicit, static,友元函数,流插入运算符""重载,友元类,内部类

2022-07-31 23:06:02 494 2

原创 C++日期类运算符重载

完整日期类,包含构造函数,拷贝构造函数等,以及各类与日期类相关的各种运算符的重载

2022-07-31 13:34:56 370

课程设计——通讯录(C语言实现)

数据结构课程设计,包含完整源码、流程图、设计分析等

2021-08-12

C语言,数据结构课程设计——扫雷游戏.docx

扫雷游戏,C语言实现,包含完整源码,流程图,设计与分析思路

2021-08-12

空空如也

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

TA关注的人

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