9.4日常记录

news2024/9/23 11:22:17

一、索英笔试

1.实现strcpy

 1.char src[] = "Hello, World!";: 这里定义了一个字符数组。这个字符串 "Hello, World!" 的内容被直接存储在这个数组中,数组的大小由字符串的长度加上一个额外的位置用于存储字符串结束符'\0'自动确定。 例如,这个数组的大小为 13(12 个字符加上一个结束符)。 可以修改这个数组中的内容,因为它是在栈上分配的可修改的内存区域。

2. char* src = "Hello, World!";: 这里定义了一个字符指针,它指向一个字符串常量。这个字符串通常存储在只读的内存区域(如常量数据段)。 不能通过这个指针修改所指向的字符串内容,因为它指向的是常量。

 1.第一个存到栈区,可以更改字符,第二个存到字符常量区,不可以改变其内容,指针指向字符常量区。

#include<iostream>
using namespace std;
char* strcpy_t(char* strDest, const char* strSrc) {
	if (strSrc == nullptr) {
		return nullptr;
	}
	while (*strSrc != '\0') {
		*strDest = *strSrc;
		strDest++;
		strSrc++;
	}
	*strDest = '\0';
	return strDest;
}
int main() {
	char src[] = "Hello, World!";
	char dest[20];
	char* result = strcpy_t(dest, src);
	if (result != nullptr) {
		std::cout << "Copied string: " << dest << std::endl;
	}
	else {
		std::cout << "Source string is null." << std::endl;
	}
	return 0;
}

2.改错题:

p是值传递,但是p的指向不会改变,str还是指向的空,并不会被分配内存 p只在GetMemory内部有效,所以在main中 str仍为空。

#include<iostream>
using namespace std;
void GetMemory(char* p) {
	p = (char*)malloc(100);
}
int main() {
    char* str = NULL;
    GetMemory(str);
    strcpy_s(str, 20, "hello world");
    printf(str);
    free(str); // 记得释放动态分配的内存
    return 0;
}

3.#include<file.h>和#include"file.h"的区别

一、搜索路径不同

#include <file.h>: 编译器通常会在预定义的系统目录中搜索这个头文件。这些目录通常包含标准库头文件和系统提供的头文件。 例如,在大多数 C++ 实现中,<iostream>等标准库头文件就是通过这种方式包含的。

#include "file.h": 编译器首先会在当前源文件所在的目录中搜索这个头文件。 如果在当前目录中没有找到,它会接着在预定义的包含路径中搜索,但这个搜索路径通常与<>包含方式的搜索路径不同。通常用于包含用户自定义的头文件或者项目特定的头文件。

二、使用场景不同

<> 通常用于包含标准库头文件和系统头文件,因为这些头文件的位置是相对固定的,并且由编译器和开发环境预先配置好。

""通常用于包含用户自己编写的头文件或者项目中特定的头文件,这些头文件通常与当前源文件在同一个项目目录结构中。

二、极大极小搜索和α-β剪枝算法

1.极大极小搜索和 α-β 剪枝算法是在博弈论中用于寻找最优策略的常用算法。

假设我们在进行一个双人博弈游戏,比如五子棋。在每个回合,一方要选择一个行动,然后另一方做出回应。我们想要找到对于当前玩家来说最优的行动。 对于当前轮到做决策的玩家(称为极大层,比如我方),我们希望选择能使局面评估值最大化的行动。而对于对手(称为极小层,比如敌方),我们假设对手会选择使局面评估值最小化的行动。 通过递归地从当前局面向下探索可能的后续局面,并计算每个局面的评估值,最终回溯得到当前局面的最优决策。

 而在极大极小搜索的过程中,可能会存在很多不必要的搜索。α-β 剪枝就是用来减少这种不必要的搜索,从而提高搜索效率。

α 表示极大层(我方)当前已知的最优下界,β 表示极小层(敌方)当前已知的最优上界。在博弈树中,也就是五子棋棋局中,我方肯定会选择对自己有益的(得分高的)落子,而敌方则会尽可能的让你的得分低

在极大层中,如果当前计算出的局面评估值大于等于 β,那么就不需要继续搜索这个分支了,因为敌方肯定不会选择让我方得到这么好的局面。

在极小层中,如果当前计算出的局面评估值小于等于 α,同样不需要继续搜索这个分支,因为我方肯定不会让敌方达到这么差的局面。

红色线代表递归顺序。所以如下图所示,当推出β为-1时,整个右侧的圈1就不需要再遍历了,因为在极小层 α大于贝塔(2>-1),我肯定会选择更有利的局面。 所以右侧剪枝。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2105604.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CSS英文换行

在CSS中&#xff0c;如果你想让英文单词换行&#xff0c;可以使用word-break: break-all;属性。这个属性会强制浏览器在任何字符之间进行换行&#xff0c;即使没有空格或其他分隔符。 没有加样式前的运行结果 CSS样式 p {word-break: break-all; } 运行结果 这将确保段落内的…

【弱监督时间动作定位】Probabilistic Vision-Language Representation for WSTAL 论文阅读

Probabilistic Vision-Language Representation for Weakly Supervised Temporal Action Localization 论文阅读 Abstract1 Introduction2 RELATEDWORK2.1 Weakly Supervised Temporal Action Localization2.2 Vision Language Pre-training2.3 Probabilistic Representation 3…

VS2022卸载记录

Releases microsoft/VisualStudioUninstaller (github.com) 在上面的网址中下载压缩包 下载之后解压&#xff0c;之后选择红框文件&#xff0c;右键选择以管理员身份运行 输入Y&#xff0c;回车 &#xff0c;之后等待程序执行结束 该操作之后&#xff0c;我发现我的安装目录中…

CentOS7 MySQL 数据库基本使用

3.查看当前库中存在哪些表 mysql> show tables 4.查看表的结构 mysql> describe user mysql> describe mysql.user 5.查询数据库服务的基本信息 mysql> status 二、创建及删除库和表 1.创建新的库 CREATE DATABASE 语句&#xff1a;用于创建一个新的库&…

【音视频】播放音视频时发生了什么? 视频的编解码 H264是什么? MP4是什么?

目录 ✨播放一个视频的流程✨为什么要编码&#xff08;压缩&#xff09;视频数据&#xff1f;✨如何编码&#xff08;压缩&#xff09;数据&#x1f384;简单的例子&#x1f384;音视频编码方式&#x1f384;视频编码格式H264编码是什么&#xff1f;发展历程&#xff1f;H.264基…

使用python+opencv解析图像和文本数据

1. 创建虚拟环境 新建文件夹, 并在文件夹中创建虚拟环境,可以使用Vscode打开文件夹, 然后在终端中输入以下命令: python -m venv venv2. 激活虚拟环境 在终端中输入以下命令: venv\Scripts\activate3. 安装依赖 在终端中输入以下命令: pip install opencv-pythonpip inst…

docker pull命令拉取镜像失败的解决方案

docker pull命令拉取镜像失败的解决方案 一、执行docker pull命令&#xff0c;拉取镜像失败 报错信息&#xff1a;error pulling image configuration: Get https://production.cloudflare.docker.com/registry-v2/docker/registry/v2/blobs/sha256/51/5107333e08a87b836d48f…

第86集《大佛顶首楞严经》

《大佛顶如来密因修正了义诸菩萨万行首楞严经》。监院法师慈悲&#xff0c;诸位法师&#xff0c;诸位同学&#xff0c;阿弥陀佛&#xff01; 请大家打开讲义188面 我们这一科讲到&#xff0c;辛三、盗戒。透过大乘的理观跟事修&#xff0c;所谓大乘的戒法来对治偷盗的行为跟偷…

EasyExcel单行或多行表头的简单Excel导出

一般Excel不需要复杂的数据格式导出&#xff0c;只是在表头上略有区别&#xff0c;下面展示单行和多行表头Excel导出 1、单行表头 例如&#xff1a;Excel表头只有单行&#xff0c;那就只需要使用注解ExcelProperty即可实现 ① 添加依赖 首先&#xff0c;在 pom.xml 中添加 E…

zhidianyun01/基于 ThinkPHP+Mysql 的智慧园区+智慧园区管理系统+园区物业管理系统+园区物业管理系统源码

园区物业管理系统园区管理系统园区管理园区物业物业管理系统园区物业管理系统源码 软件架构 ThinkPHPMysql 源码合作 提供完整源代码 软件界面展示

imap发送邮件:如何配置IMAP服务器发邮件?

imap发送邮件的设置教程&#xff1f;如何使用IMAP服务发送邮件&#xff1f; IMAP发送邮件作为一种高效的邮件管理方式&#xff0c;允许用户在多个设备上同步邮件&#xff0c;极大地提升了工作效率。AokSend将详细介绍如何配置IMAP服务器以实现邮件的发送。 imap发送邮件&…

Linux入门攻坚——31、rpc概念及nfs和samba

NFS&#xff1a;Network File System 传统意义上&#xff0c;文件系统在内核中实现 RPC&#xff1a;函数调用&#xff08;远程主机上的函数&#xff09;&#xff0c;Remote Procedure Call protocol 一部分功能由本地程序完成 另一部分功能由远程主机上的 NFS本质…

通过FFmpeg和URL查看流的编码格式

FFmpeg下载后会有三个执行文件&#xff0c;跳转到FFmpeg所在文件夹 查看视频流URL地址的编码格式命令&#xff1a; // 在下载ffmpeg的文件夹中执行如下命令&#xff0c;可查看流的编码格式&#xff0c;这里的测试流是H264编码ffprobe http://devimages.apple.com/iphone/sample…

CSS学习13

CSS例子 学成网 需要使用的图片&#xff1a; 代码&#xff1a; <html><head><style>/*CSS初始化*/* { /*清除内外边框*/padding: 0;margin: 0;}ul {list-style: none; /*清除列表样式*/}.clearfix:before,.clearfix:after { /*清除浮动*/content: &qu…

C++11(1)

目录 前言 小故事 C11优势 统一的列表初始化 1.{}初始化 2. std::initializer_list 声明 1.auto 2.decltype 3.nullptr 前言 小故事 1998 年是 C 标准委员会成立的第一年&#xff0c;本来计划以后每 5 年视实际需要更新一次标准&#xff0c; C 国际 标准委员会在研究…

如何使用ChatGPT撰写研究计划书?AI写作全攻略

大家好&#xff0c;感谢关注。我是七哥&#xff0c;一个在高校里不务正业&#xff0c;折腾学术科研AI实操的学术人。关于使用ChatGPT等AI学术科研的相关问题可以和作者七哥&#xff08;yida985&#xff09;交流&#xff0c;多多交流&#xff0c;相互成就&#xff0c;共同进步&a…

从安卓开发到AI产品经理——我的AI绘画之旅

大家好&#xff0c;我是一名有着多年安卓开发经验的程序员。在日复一日的编码生活中&#xff0c;我对AI行业产生了浓厚的兴趣。于是&#xff0c;我决定转行成为一名AI产品经理。在这个过程中&#xff0c;我通过学习AI绘画工具初步了解了AI行业&#xff0c;下面我将分享我的学习…

Apache DolphinScheduler在Cisco Webex的应用与优化实践

引言 我叫李庆旺&#xff0c;是Cisco Webex的一名软件工程师&#xff0c;同时也是Apache DolphinScheduler&#xff08;以下简称DS&#xff09;的Committer。 在过去的两年里&#xff0c;公司基于Apache DolphinScheduler进行了多项持续改进和创新&#xff0c;以更好地适应我们…

Docker 的安装

讲解下在 Linux 下如何安装 Docker ‍ 官网 Docker 官网&#xff1a;https://www.docker.com Docker Hub 官网&#xff1a; https://hub.docker.com &#xff08;有很多 Docker 镜像的仓库&#xff0c;可能得魔法上网&#xff09; 对于 Docker 初学者&#xff0c;可以从官…

SSH免密登录(Mac版)

1、查看ssh版本确保已安装 ssh -V 2、生成密钥对 ssh-keygen &#xff08;我之前安装过了所以选no&#xff09; 3、将公钥追加到需要设置免密登录的服务器上 使用ssh-copy-id命令进行追加ssh-copy-id -i id_rsa.pub useridip ( userid 和 ip 需要对应换成自己的)