每日刷题-6
目录
一、选择题
二、算法题
1.Fibonacci数列
2.合法括号序列判断
一、选择题
1、

解析:内联函数是一种可以提高函数执行效率的方法,它的原理是编译时在函数调用点直接展开函数体的代码,从而避免了函数调用的开销。
但是,内联函数也有一些限制和缺点,比如:
- 内联函数不能包含复杂的结构控制语句,例如循环语句和 switch 语句,否则会导致代码膨胀和效率降低。
- 内联函数不能是直接递归函数,即自己内部还调用自己的函数,否则会造成无限循环或栈溢出。
- 内联函数的定义必须出现在内联函数第一次被调用之前,否则编译器无法展开函数体。
- 内联函数只是对编译器的一个建议,编译器可以根据函数的复杂度和调用频率来决定是否真正进行内联。
因此,适宜采用内联函数的情况是:函数代码少、频繁调用,并且没有复杂的流程控制和递归调用。这样可以最大程度地利用内联函数的优势,提高程序的运行速度。答案选C。
2、

解析:缺省参数(默认参数):在声明和定义函数时,可以给函数的参数带上一个默认值;在调用函数时,如果用户没有传递实参,则使用定义时所给的默认值,如果用户传递了实参,就使用用户传递的实参。
全缺省参数:每个参数都有默认值;
半缺省参数:部分参数具有默认值,并且默认值必须从右往左依次给出,例如:
void f(int a, int b = 20, int c = 10)编译成功
void f(int a = 10, int b, int c = 20)编译失败。答案为D。
3、

解析:类定义2种方式:
1、可以将声明和成员函数的定义全部放在类中
2、类中只放成员变量和成员函数的声明,成员函数的定义可以放在.cpp文件中定义,注意:成员函数名前必须添加类名
class:默认访问权限private;struct:默认的访问权限public
建议:将成员变量设置为private将成员函数设置为public。答案为A。
4、

解析:构造函数的特点有以下几点:
- 构造函数的名称必须与类名相同,区分大小写;
- 构造函数没有返回值,也不能用void修饰;
- 构造函数可以用任何访问修饰符(public、protected和private)修饰;
- 构造函数不能用static、final、abstract和synchronized等关键字修饰;
- 构造函数不能被覆写(override);
- 构造函数可以被重载(overload),以参数的个数、类型及顺序区分;重载意味着一个类里可以有多个构造函数,构造函数1可以调用构造函数2完成对象初始化,通过this关键字:this(参数1,参数2…)实现;答案为C。
5、

解析:一般来说,使用初始化列表比在构造函数内部赋值更高效,因为初始化列表可以直接调用成员变量的构造函数,而不需要先调用默认构造函数再进行赋值。而且,有些情况下必须使用初始化
(1)常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面
(2)引用类型,引用必须在定义的时候初始化,并且不能重新赋值,所以也要写在初始化列表里面
(3)没有默认构造函数的类类型,因为使用初始化列表可以不必调用默认构造函数来初始化,而是直接调用拷贝构造函数或其他合适的构造函数初始化。答案选B。
6、

解析:如果将运算符符重载成类的成员函数,形参个数要比该运算符需要的参数个数少1,因为成员函数具有隐藏的this指针。如果类中具有单个参数的构造函数,该构造函数具有类型转换的作用,对于B选项,编译器在编译代码节点,会调用单参构造函数将3转换为BigNumber的对象
但是D选项第一个参数不是对象,没有this指针,所以错误,
7、

解析:友元函数是C++中的一种特殊函数,它具有访问类中私有成员的权限,即使该函数不是类的成员函数。友元函数可以在类内部声明为友元或在类外部声明为友元。
D是错误的,友元函数是有关键字friend修饰,但是调用的时候不是通过指针this调用的,因为友元函数不属于任何类没有this指针。
二、算法题
1.Fibonacci数列

解析:找到两个斐波那契数,使得F[i]<=n<=fF[i+1],然后计算n到两个数之间的距离。
代码:
#include <iostream>
using namespace std;int main() {int n;while(cin>>n){int f0=0,f1=1,f2=1;int step=0;while(n>f2){f0=f1;f1=f2;f2=f1+f0;}step=(f2-n)<(n-f1)?(f2-n):(n-f1);cout<<step;}
}
2.合法括号序列判断

解析:本题考察对栈的应用。用栈结构实现,栈中存放左括号,当遇到右括号之后,检查栈中是否有左括号,如果有则出栈,如果没有,则说明不匹配。当把字符串遍历完全之后,检查栈是否为空,为空则说明是合法括号序列。
代码:
class Parenthesis {public:bool chkParenthesis(string A, int n) {stack<char> sc;for (auto ele : A) {switch (ele) {case '(':sc.push(ele);break;case ')': {if (sc.empty() || sc.top() != '(')return false;elsesc.pop();}break;default:return false;}}return true;}
};
相关文章:
每日刷题-6
目录 一、选择题 二、算法题 1.Fibonacci数列 2.合法括号序列判断 一、选择题 1、 解析:内联函数是一种可以提高函数执行效率的方法,它的原理是编译时在函数调用点直接展开函数体的代码,从而避免了函数调用的开销。 但是,内联函…...
systrace使用注意事项
打开systrace文件报错:Unable to select a master clock domain because no path can be found from “SYSTRACE” to “LINUX_FTRACE_GLOBAL”. 使用systrace生成的trace.html文件无法打开,或者报上面的错误,可以选择下面这个方式࿱…...
RockyLinux9.2 网卡配置和nmcli、nmtui命令的使用
NetworkManager NetworkManager 是一个标准的Linux网络配置工具套件,支持服务器,也支持桌面环境, 发展到如今,绝大多数流行的发行版都支持它。 这套网络配置工具适用于 Rocky Linux 8 及更高版本。 nmcli是nm的命令行工具、nmt…...
Java线程池ThreadPoolExecutor应用(Spring Boot微服务)
记录:475 场景:在Spring Boot微服务中使用Java线程池ThreadPoolExecutor。实现Runnable接口提交线程任务到线程池。 版本:JDK 1.8,Spring Boot 2.6.3。 1.使用注解配置线程池ThreadPoolExecutor (1)说明 ThreadPoolExecutor,…...
QT5|C++|通过信号槽机制实现进度条更新
背景:最近在写一个删除90天数据显示进度的功能,实现思路是:通过信号槽捕获当前进度值实现。 备注:点击start按钮,开始更新进度条,直到100(每隔1s进行更新)举个栗子: 1、…...
什么是智能推荐?智能推荐的原理是什么?
一、智能推荐的魔力 2020年的愚人节晚间,罗永浩在抖音带货,相信你也被刷屏了吧。3小时的直播过程中,22款产品轮番出场,最终首播支付交易总额突破1.1亿、整场直播观看总人数超过4800万、总销售件数逾91万,粉丝打赏音浪…...
Windows下的Elasticsearch-head安装
Windows下的Elasticsearch-head安装 参考:https://gitcode.net/mirrors/mobz/elasticsearch-head 需要用到 npm 命令,这里可以提前下载安装下Node.js 即可自动安装npm; Node.js 下载安装地址:https://nodejs.org/en/download # 进…...
两台服务器间进行文件传输
目录 方法1:使用SCP 方法2:使用rsync 使用SSH密钥 两台服务器之间进行文件传输通常可以使用SCP(Secure Copy Protocol)或rsync命令。这两种方法都是在UNIX和Linux系统上常用的工具,用于安全地复制文件和目录。以下是…...
研究生选控制嵌入式还是机器视觉好?
研究生选控制嵌入式还是机器视觉好? 我是嵌入式/硬件方向转的算法,现在是公司的算法负责人,如果再让我选一次,我是不会再选嵌入式方 向,嵌入式如果只做技术是没前途的。 你要是有一定自学能力,能自己在学校…...
SecureCRT SSH与FTP连接中文乱码
1、首先要保证服务端环境变量是UTF-8编码的 LANG”zh_CN.UTF-8″ 2、会话里面配置好字符编码:UTF-8 SSH会话的窗口就可以正常显示中文了,效果如下 3、打开FTP或者SFTP时进行文件传输时,列表窗口里面还是乱码,需要把SecureCRT安…...
OSI七层网络参考模型与数据流通过程
OSI七层网络参考模型 文章目录 OSI七层网络参考模型1. OSI参考模型初步了解2. OSI参考模型理解3. 数据流通的过程 1. OSI参考模型初步了解 OSI,英文为Open System Interconnect,意为开放式系统互连,国际化标准组织(ISO)指定了OSI模型&#x…...
数字孪生行业相关政策梳理--工业领域相关政策(可下载)
自2021年国家“十四五”规划纲要提出“探索建设数字孪生城市”以来,国家发展和改革委员会、工业和信息化部、住房和城乡建设部、水利部、农业农村部等部门纷纷出台政策,大力推动数字孪生在千行百业的落地发展。这些政策不仅为数字孪生的应用提供了广阔的…...
【工具】咸鱼之王辅助小助手来了!
自动答题的视频演示:【工具】咸鱼之王辅助小助手来了!_哔哩哔哩_bilibili 刚开始搞,还没来得及做界面,目前只做了自动答题。 欢迎感兴趣的大佬一起来开发~...
黑马JVM总结(十)
(1)直接内存_基本使用 下面我们看一下使用了ByteBuffer直接内存,大文件的读写效率是非常的高 Java本身并不具备磁盘读写的能力,它需要调用操作系统的函数,需要从java的方法内部调用本地方法操作系统的方法,…...
JPEG、GIF动图可以转换成SVG、Eps格式的矢量图吗?
在进行图片设计的过程中,我们可能需要很多不同格式的图片,例如 JPG、PNG、BMP 和 GIF 位图图像,怎么将这些图片转换成矢量图呢?一款功能强大的应用程序,能够轻松将位图图片转换成矢量图输出。Vector Magic会帮你进行自…...
数据结构与算法的力量:编写更高效的代码
文章目录 为什么数据结构和算法重要?1. 提高性能2. 节省资源3. 解决复杂问题4. 改进代码质量 常见数据结构和算法数据结构1. 数组(Array)2. 链表(Linked List)3. 栈(Stack)4. 队列(Q…...
Python批量统计pdf中“中文”字符的个数
之前的文章提供了批量识别pdf中英文的方法,详见【python爬虫】批量识别pdf中的英文,自动翻译成中文上。以及自动pdf英文转中文文档,详见【python爬虫】批量识别pdf中的英文,自动翻译成中文下。以及Python统计pdf中英文单词的个数。 本文实现Python统计pdf中中文字符的…...
LeetCode的第 363 场周赛——记录+补题
研究生生涯第一次打力扣周赛——3题 1. 计算 K 置位下标对应元素的和 class Solution { public:int cnt(int x){int sum 0;while (x) {sum ((x%2)?1:0);x/2;}return sum;}int sumIndicesWithKSetBits(vector<int>& nums, int k) {int n nums.size();int ans 0…...
【网络协议】Http-上
Http请求结构: 结构图1: 实验解析请求报文: 1.在Edge浏览器上输入ip地址端口号文件资源,也就是下图中的120.XX.139.29:8888/A/B/c.html 2.我的程序接收到了一个没有有效载荷的http请求(呼应上面的结构图1),如下 GET …...
Langchain-chatchat本地部署
Langchain-chatchat本地部署 参考官网 环境配置 conda安装 minicoda下载地址 安装时注意勾选上添加环境变量。安装完成之后使用conda --version测试一下版本。 环境创建 先配置一下conda的镜像地址(使用阿里的靠谱一些),这里要修改一下…...
从‘调不出来’到‘一次过流片’:折叠共源共栅放大器设计中那些没人告诉你的‘坑’与调试技巧
从‘调不出来’到‘一次过流片’:折叠共源共栅放大器设计中那些没人告诉你的‘坑’与调试技巧 在模拟电路设计的江湖里,折叠共源共栅(Folded Cascode)放大器就像一位身怀绝技却性格古怪的武林高手——性能强悍但极难驯服。许多工…...
如何快速使用OpCore Simplify:零基础黑苹果的终极配置指南
如何快速使用OpCore Simplify:零基础黑苹果的终极配置指南 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 还在为复杂的OpenCore配置而烦恼…...
80+经典游戏宽屏焕新:WidescreenFixesPack重塑怀旧体验
80经典游戏宽屏焕新:WidescreenFixesPack重塑怀旧体验 【免费下载链接】WidescreenFixesPack Plugins to make or improve widescreen resolutions support in games, add more features and fix bugs. 项目地址: https://gitcode.com/gh_mirrors/wi/WidescreenFi…...
Anaconda Prompt卡在solving environment?别慌,三步搞定清华镜像源配置(附.condarc文件)
Anaconda环境配置卡顿?清华镜像源优化全指南 刚接触Python数据科学的新手们,十有八九会在Anaconda环境配置这一步栽跟头。特别是当看到命令行窗口里"solving environment"的提示一直转圈却迟迟没有进展时,那种等待的煎熬简直让人抓…...
保姆级教程:在Windows 11上为PyTorch配置CUDA 12.x和cuDNN(含环境变量疑难杂症排查)
Windows 11深度学习环境配置全攻略:从CUDA安装到PyTorch GPU加速实战 每次打开PyCharm准备大展身手时,看到那个令人心碎的False——torch.cuda.is_available()的输出结果,是不是感觉整个深度学习梦想都被泼了冷水?别担心…...
Nunchaku-flux-1-dev部署避坑指南:解决403 Forbidden错误
Nunchaku-flux-1-dev部署避坑指南:解决403 Forbidden错误 部署Nunchaku-flux-1-dev时遇到403 Forbidden错误?别急,这篇文章手把手带你排查和解决这个常见但棘手的问题。 最近在部署Nunchaku-flux-1-dev时,不少小伙伴反映遇到了403…...
嵌入式AI边缘计算原型:STM32与云端PyTorch模型协同工作流设计
嵌入式AI边缘计算原型:STM32与云端PyTorch模型协同工作流设计 1. 场景需求与痛点分析 在智能家居、工业监测等物联网场景中,我们常常遇到这样的矛盾:边缘设备需要实时响应,但计算能力有限;云端算力强大,但…...
别再只会while(1)了!聊聊MCU裸机开发的6种实用架构,从51到STM32都能用
从超级循环到事件驱动:MCU裸机开发的6种架构实战指南 当你第一次点亮LED时,while(1)循环就像魔法一样简单有效。但随着项目复杂度增加——需要同时处理按键消抖、屏幕刷新、数据通信和状态管理时,那个曾经可靠的超级循环突然变成了意大利面条…...
快速上手Qwen3-TTS:无需代码,Web界面直接合成10种语言语音
快速上手Qwen3-TTS:无需代码,Web界面直接合成10种语言语音 1. 为什么选择Qwen3-TTS语音合成 语音合成技术正在改变我们与数字世界的交互方式。想象一下,你正在制作一个多语言教学视频,或者开发一个国际化的智能客服系统…...
OpenClaw成本优化方案:ollama GLM-4-7-Flash替代OpenAI API实测
OpenClaw成本优化方案:ollama GLM-4-7-Flash替代OpenAI API实测 1. 为什么需要寻找OpenAI API的替代方案 去年我开始在个人项目中使用OpenClaw实现自动化办公流程时,很快被OpenAI API的token消耗速度震惊了。一个简单的"读取邮件附件-解析内容-生…...
