CentOS使用中遇到的问题及解决方法

news2024/11/24 5:17:25

一、CentOS 7网络配置(安装后无法联网问题)

现象说明

        在安装CentOS系统后,有可能出现无法联网的问题,虚拟机中的网络配置并没有问题,而系统却无法联网,也ping不通。


原因描述

        CentOS默认开机不启动网络,因此需要对网络进行配置,开启网络开机启动。


解决方法

1.打开终端,使用ip addr命令查看一下网络信息;

图中圈出的是系统网络名称,我们稍后会用到它,有的系统是ens33,有的是eth0等;

2.切换至root用户,输入命令vi /etc/sysconfig/network-scripts/ifcfg-<系统网络名称>,我的是ens33,所以输入vi /etc/sysconfig/network-scripts/ifcfg-ens33命令;

3.进入vi界面,可以看到,ONBOOT的值是no,我这里已经修改过了,所以是yes;

4.使用vi命令将ONBOOT=no的值改为yes;

5.保存后退出,重启系统(可以reboot命令重启)。重启完成后,可以使用浏览器打开个网页看看,也可以使用ping命令测试网络连通性;

ping www.baidu.com

二、联网后就可以开始更新系统库文件

检查DNS设置

1.编辑/etc/resolv.conf文件,确保其中包含有效的DNS服务器,例如Google的公共DNS:

sudo nano /etc/resolv.conf

sudo vi /etc/resolv.conf

2.添加以下内容:

nameserver 8.8.8.8
nameserver 8.8.4.4

检查YUM仓库配置

国内一般使用国内的镜像源,国外的镜像源速度很慢,有时候甚至不能用;

1.先备份原来的配置:

sudo cp -a /etc/yum.repos.d /etc/yum.repos.d /etc/yum.repos.d /etc/yum.repos.d.backup

2.我们使用阿里云的镜像源:

sudo nano /etc/yum.repos.d/CentOS-Base.repo

3.将原内容替换为一下内容:

[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

4.清理并重建缓存

sudo yum clean all
sudo yum makecache
sudo yum update

5.总结
出现Cannot find a valid baseurl for repo:base/7/x86_64错误通常是由于网络连接问题、DNS设置问题或YUM仓库配置问题引起的。通过检查并修复网络连接、更新DNS设置、修改YUM仓库配置或使用可靠的镜像源,如阿里云镜像源,可以解决这个问题。希望本指南能够帮助你顺利解决该错误,提高YUM包管理的稳定性和效率。

三、CentOS常用命令

其他同Ubuntu的命令在此处略

详情可以查看本人blog的其他类似文章

软件包管理

1.RPM命令使用

rpm命令是RPM软件包的管理工具。rpm原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。

命令解析
rpm   [OPTIONS]   PACHAGE_FILE命令格式
rpm -ivh your-package直接安装
rpmrpm --force -ivh your-package.rpm忽略报错,强制安装
rpm -ql查询出所有安装过的包
rpm -q 包名获得某个软件包的全名
rpm -ql 包名获得rpm包中文件安装的位置
rpm -e 包名卸载

2.YUM命令

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

命令解析
yum -y install [package]下载并安装一个rpm包
yum localinstall [package.rpm]安装一个rpm包,使用你自己的软件仓库解决所有依赖关系
yum -y update更新当前系统中安装的所有rpm包
yum update [package]更新一个rpm包
yum remove [package]删除一个rpm包
yum list列出当前系统中安装的所有包
yum search [package]在rpm仓库中搜寻软件包
yum clean [package]清除缓存目录(/var/cache/yum)下的软件包
yum clean headers删除所有头文件
yum clean all删除所有缓存的包和头文件

网络相关

命令解析
ifconfig eth0显示一个以太网卡的配置
ifconfig eth0 192.168.1.1 netmask 255.255.255.0配置网卡的IP地址
ifdown eth0禁用 ‘eth0’ 网络设备
ifup eth0启用 ‘eth0’ 网络设备
iwconfig eth1显示一个无线网卡的配置
iwlist scan显示无线网络
ip addr show显示网卡的IP地址

1.网络服务

#查看IP信息
ip a

#网络连通性测试
ping [选项] 目标主机

#设置网络信息
vi /etc/sysconfig/network-scripts/ifcfg-ens33

#重启network网络服务
service network restart

2 防火墙设置

systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

#查看防火墙状态
systemctl status firewalld

#打开防火墙
systemctl start firewalld

#关闭防火墙
systemctl stop firewalld

#禁止开机启动
systemctl disable firewalld

#开机启用
systemctl enable firewalld


#查看版本: 
firewall-cmd --version

#查看帮助: 
firewall-cmd --help

#显示状态: 
firewall-cmd --state

#查看所有打开的端口: 
firewall-cmd --zone=public --list-ports

#更新防火墙规则: 
firewall-cmd --reload

#查看区域信息:  
firewall-cmd --get-active-zones

#查看指定接口所属区域: 
firewall-cmd --get-zone-of-interface=eth0

#拒绝所有包:
firewall-cmd --panic-on

#取消拒绝状态: 
firewall-cmd --panic-off

#查看是否拒绝: 
firewall-cmd --query-panic

比如,需打开防火墙2888和3888端口

步骤1:设置开放的端口号

firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-port=2888/tcp --permanent
sudo firewall-cmd --add-port=3888/tcp --permanent

–permanent永久生效,没有此参数重启后失效

步骤2:重启防火墙

firewall-cmd --reload

步骤3:查看开放端口号

firewall-cmd --list-all

3.主机映射文件

#修改主机名与IP映射关系
vi /etc/hosts

系统相关

命令解析
su -切换到root权限(与su有区别)
shutdown -h now关机
shutdown -r now重启
top罗列使用CPU资源最多的linux任务 (输入q退出)
tree以树状图显示
pstree以树状图显示程序
man ping查看参考手册(例如ping 命令)
passwd修改密码
df -h显示磁盘的使用情况
cal -3显示前一个月,当前月以及下一个月的月历
cal 10 1988显示指定月,年的月历
date –date ‘1970-01-01 UTC 1427888888 seconds’把一相对于1970-01-01 00:00的秒数转换成时间

1.重启命令

#立刻重启(root用户使用)
reboot
#或者
shutdown -r now

#10分钟后自动重启(root用户使用)
shutdown -r 10

#在时间为20:35时候重启(root用户使用)
shutdown -r 20:35

#如果是通过shutdown命令设置重启的话,可以取消重启
shutdown -c

2.关机命令

#立刻关机(root用户使用)
halt
#或者
poweroff

shutdown -h now

init 0

#10分钟后自动关机
shutdown -h 10

3.hostname命令

#查看主机名
hostname

#设置主机名-临时修改
hostname 主机名

#设置主机名-永久修改
vi /etc/hostname

常用技巧

1.窗体快捷键

命令解析
Ctrl + u删除光标之前到行首的字符
Ctrl + k删除光标之前到行尾的字符
Ctrl + c取消当前行输入的命令,相当于Ctrl + Break
Ctrl + a光标移动到行首(ahead of line),相当于通常的Home键
Ctrl + e光标移动到行尾(end of line)
Ctrl + f光标向前(forward)移动一个字符位置
Ctrl + b光标往回(backward)移动一个字符位置
Ctrl + l清屏,相当于执行clear命令
Ctrl + r显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
Ctrl + w删除从光标位置前到当前所处单词(word)的开头
Ctrl + t交换光标位置前的两个字符
Ctrl + y粘贴最后一次被删除的单词
Ctrl + Alt + d显示桌面
Alt + b光标往回(backward)移动到前一个单词
Alt + d删除从光标位置到当前所处单词的末尾
Alt + F2运行
Alt + F4关闭当前窗口
Alt + F9最小化当前窗口
Alt + F10最大化当前窗口
Alt + Tab切换窗口
Alt + 左键移动窗口(或在最下面的任务栏滚动鼠标滑轮)

2.操作小技巧

        鼠标中间键:粘贴突出显示的文本。(使用鼠标左键来选择文本。把光标指向想粘贴文本的地方。点击鼠标中间键来粘贴。)

        Tab:命令行自动补全。使用 shell 提示时可使用这一方式。键入命令或文件名的前几个字符,然后按 [Tab] 键,它会自动补全命令或显示匹配键入字符的所有命令。

        在滚动条的空白处点击鼠标中键:屏幕即滚动到那个地方。

        在桌面或文件管理器中直接按 / 就可以输入位置,打开文件管理器。

        在 vi 或 Firefox 中直接按 / 即可进入快速搜索状态。

        网站链接和图片可直接拖放到桌面或者目录,可以马上下载。

        直接将文件管理器中的文件拖到终端中就可以在终端中得到完整的路径名。

四、Centos 7 安装 ifconfig命令

相关问题

Centos 7在最小化安装时,系统默认没有安装 ifconfig 命令;
如果直接运行 ifconfig 命令,会提示 -bash: ifconfig :command not found

解决方法

运行 yum -y isntall ifconfig 命令时,结果显示:

net-tools.x86_64:Basic networking tools

继续执行命令 #yum install net-tools.x86_64

安装完成后,就可以正常使用 ifconfig 管理命令了
同时,/sbin 目录下,也会有 ifconfig 文件

五、Centos 7 安装 vim 命令

vim file提示没有vim这个,则需要安装vim;

1.更新库安装包

先执行 yum -y update

更新当前系统中安装的所有rpm包

2.安装vim

执行命令 yum -y isntall vim*

安装完成后就可以使用vim了;

六、CentOS 7升级gcc到10.2.0

1.先安装基本的低版本的gcc

由于 Linux 操作系统的自由、开源,在其基础上衍生出了很多不同的 Linux 操作系统,如 CentOS、Ubuntu、Debian 等。这些 Linux 发行版中,大多数都默认装有 GCC 编译器(版本通常都较低)。

#通过此命令快速安装gcc
yum -y install gcc
yum -y install gcc-c++

通过如上命令得到的gcc通常版本较低。

2.升级gcc

升级gcc需要在系统中包含一个低版本的gcc,和make命令;

1、下载gcc源码包

gnu-gcc安装包下载_开源镜像站-阿里云gnu-gcc安装包是阿里云官方提供的开源镜像免费下载服务,每天下载量过亿,阿里巴巴开源镜像站为包含gnu-gcc安装包的几百个操作系统镜像和依赖包镜像进行免费CDN加速,更新频率高、稳定安全。icon-default.png?t=O83Ahttps://mirrors.aliyun.com/gnu/gcc/

2、解压并切换到解压后的目录

(可以放在了/home/yonghu目录下)

tar -zxvf gcc-10.2.0.tar.gz
cd gcc-10.2.0/

3、下载编译依赖项

./contrib/download_prerequisites

4、新建gcc-bulid目录

(与gcc-10.2.0同级)并进入该目录中。

mkdir gcc-build
cd gcc-build/

5、生成Makefile文件

../configure --prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --disable-multilib
这时候会出现报错:

checking for the correct version of gmp.h... no configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.

解决办法
yum -y install  gmp  gmp-devel  mpfr  mpfr-devel  libmpc  libmpc-devel
这时候再运行命令就成功了
../configure -prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --disable-multilib

6、开始编译

make

注意:编译时间较长,请耐心等待,选择适当的时间进行此编译操作。

7、安装

make install

8、重启机器,并验证

升级完成!

9、更新库软连接

cd /usr/lib64
rm -f libstdc++.so.6
ln -s libstdc++.so.6.0.28 libstdc++.so.6

七、CentOS安装zip,unzip

查看源

首先,我们可以使用yum list zip unzip查看得知 CentOS 的官方镜像是自带zipunzip

安装

直接执行一下命令:

yum install -y unzip zip

八、CentOS安装wget

实际工作中,centos系统自带的wget版本有时候比较低,不具备ftps的支持,因此对数据下载造成一定困扰,因此本文针对wget的最新版本安装步骤进行梳理,主要包括前期环境准备和安装步骤。

1.前期环境准备

安装如下软件:
对于centos系统:

yum install gnutls-devel -y
yum install openssl openssl-devel
yum install texinfo

对于ubuntu系统:

sudo apt-get install openssl openssl-devel
sudo apt-get install texinfo

2.wget 新版本安装步骤

首先下载 wget 的源码包:

官方下载:Index of /gnu/wgeticon-default.png?t=O83Ahttps://ftp.gnu.org/gnu/wget/

下载完成后上传至centos机器,然后执行解压命令,并进入解压后的目录:

tar -xzvf wget-1.25.0.tar.gz
cd ./wget-1.25.0

进入解压目录后进行编译安装:

./configure --prefix=/usr --sysconfdir=/etc --with-ssl=openssl
make && make install

安装完成后,执行wget -V查看,若出现如下界面,则代表安装成功:

九、CentOS查看端口占用情况

lsof 命令

lsof(list open files)是一个列出当前系统打开文件的工具。

lsof -i:端口号

注: lsof -i 需要 root 用户的权限来执行。

#查看3306端口占用情况
lsof -i:3306

#查看8080端口占用情况
lsof -i:8080

#显示开启文件abc.txt的进程
lsof abc.txt

#显示abc进程现在打开的文件
lsof -c abc

#列出进程号为1234的进程所打开的文件
lsof -c -p 1234

#显示归属gid的进程情况
lsof -g gid

#显示目录下被进程开启的文件
lsof +d /usr/local/

#同上,但是会搜索目录下的目录,时间较长
lsof +D /usr/local/

#显示使用fd为4的进程
lsof -d 4

#显示所有打开的端口和UNIX domain文件
lsof -i -U

netstat 命令

netstat -tunlp 用于显示 tcp,udp 的端口和进程等相关情况。

netstat -tunlp | grep 端口号

option说明:
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名

#查看3306 端口占用情况:
netstat -tunlp | grep 3306

#查看当前所有tcp端口
netstat -ntlp

#查看所有80端口使用情况
netstat -ntulp | grep 80

#查看所有3306端口使用情况
netstat -ntulp | grep 3306

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

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

相关文章

硬件知识 cadence16.6 原理图输出为pdf 网络名下划线偏移 (ORCAD)

1. cadence原理图输出为PDF网络名下划线偏移 生这种情况的原因 1. 设计的原理图图纸大小比正常的 A4图纸大。 2. 打印为PDF 的时候&#xff0c;打印机的设置有问题。 2.cadence原理图输出为 PDF网络名下划线偏移的情况 可以看到上图&#xff0c;网络名往上漂移。 3. 解决办法 …

Hash table类算法【leetcode】

哈希表中关键码就是数组的索引下标&#xff0c;然后通过下标直接访问数组中的元素 那么哈希表能解决什么问题呢&#xff0c;一般哈希表都是用来快速判断一个元素是否出现集合里。 例如要查询一个名字是否在这所学校里。 要枚举的话时间复杂度是O(n)&#xff0c;但如果使用哈希…

利用c语言详细介绍下希尔排序

希尔排序是针对插入排序的优化算法。它是缩少增量的算法&#xff0c;一开始增量从元素个数len/2的增量开始&#xff0c;然后缩小增量gapgap/2&#xff0c;直到gap为1&#xff0c;最终完成序列排序。 一、图文介绍 我们还是使用数组【10&#xff0c;5&#xff0c;3&#xff0c;2…

Flutter踩坑记录(三)-- 更改入口执行文件

我们在flutter 中可能不习惯默认的lib/main.dart 作为入口文件&#xff0c;会修改成index.dart 或者修改main.dart的位置, 用Andorid studio开发 如果我们用Andorid studio开发&#xff0c;默认修改一下配置地址 运行项目即可。 用VSCode开发 如果我们使用VSCode开发&…

C#桌面应用制作计算器进阶版01

基于C#桌面应用制作计算器做出了少量改动&#xff0c;其主要改动为新增加了一个label控件&#xff0c;使其每一步运算结果由label2展示出来&#xff0c;而当点击“”时&#xff0c;最终运算结果将由label1展示出来&#xff0c;此时label清空。 修改后运行效果 修改后全篇代码 …

应用商店双弹窗“APP在向用户申请权限时未同步告知用户申请此权限的理由”驳回uni-app应用上线的解决方法

目录 问题分析 解决方法 下载插件包&#xff1a;x-perm-apply-instr 将插件包导入进你项目中的uni_modules文件夹 在项目中的main.js文件中添加以下代码 完成 其它注意事项 addPermisionInterceptor 添加 uniApi 调用拦截 removePermisionInterceptor 移除 uniApi 调用…

dockerfile构建Nginx镜像练习二(5-2)

环境准备&#xff1a; (1)保证拥有centos基础镜像 docker images | grep centos (2)服务器保证可以连接外网 1.创建工作目录 mkdir nginx cd nginx 2.在工作目录中创建并编写Dockerfile文件 vim dockerfile #定义基础镜像 FROM centos:7#维护者信息(可缺省) MAINTAINER d…

Java 调用 MULTIPART_FORM_DATA 接口

以 QAnthing 上传文件&#xff08;POST&#xff09;接口为例&#xff0c;展示Java如何调用上传文件接口。 接口文档如下&#xff1a; QAnthign接口文档地址 编码 RestTemplate 版 /** * * param url 接口地址 * param filePath 文件本地路径 */ public void uploadFile(S…

Spring Framework 的版本历史和JDK、Springboot对应关系

spring 历史版本迭代 版本版本特性Spring Framework 1.01. 所有代码都在一个项目中2. 支持核心功能IoC、AOP3. 内置支持Hibernate、iBatis等第三方框架4. 对第三方技术简单封装。如&#xff1a;JDBC、Mail、事务等5. 只支持XML配置方式。6.主要通过 XML 配置文件来管理对象和依…

SpringSecurity创建一个简单的认证应用

1、SpringSecurity 的简介 Spring Security是一个功能强大且高度可定制的身份验证和访问控制框架&#xff0c;它是Spring项目组中用来提供安全认证服务的框架&#xff0c;能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案。 Spring Security 的前身是 Acegi …

力扣 LeetCode 236. 二叉树的最近公共祖先(Day10:二叉树)

解题思路&#xff1a; 后序遍历 注意&#xff1a; p和q其中一个就是它们的公共祖先的情况也考虑到了&#xff0c;假设q是公共祖先&#xff0c;遇到q就直接返回&#xff0c;相当于是下面一边为空&#xff0c;一边不为空的情况&#xff0c;返回不为空就一边即可 class Solutio…

AIGC(生成式AI)试用 18 -- AI Prompt

"忘了"&#xff0c;“记不清了”&#xff0c;“有点印像” “能给点提示吗&#xff1f;” ...... “哦&#xff0c;想起来了&#xff0c;是这样的。。。。。。” 这就是提示的作用&#xff1a;通过关键信息、结构化信息提示&#xff0c;引导完整的、…

Telegram bot Mini-App开发实践---Telegram简单介绍与初始化小程序获取window.Telegram.WebApp对象并解析

➡️【好看的灵魂千篇一律,有趣的鲲志一百六七!】- 欢迎认识我~~ 作者:鲲志说 (公众号、B站同名,视频号:鲲志说996) 科技博主:极星会 星辉大使 后端研发:java、go、python、TS,前电商、现web3 主理人:COC杭州开发者社区主理人 、周周黑客松杭州主理人、 AI爱好…

在Windows环境下打包Qt C++项目为独立可执行文件的完整指南

目录 1. 配置Qt环境变量步骤&#xff1a; 2. 使用Release模式编译项目步骤&#xff1a; 3. 使用windeployqt工具收集依赖项步骤&#xff1a; 4. 精简复制后的文件目录方法一&#xff1a;使用windeployqt的选项方法二&#xff1a;手动删除不必要的文件方法三&#xff1a;使用静态…

多摩川编码器协议及单片机使用

参考&#xff1a; https://blog.csdn.net/qq_28149763/article/details/132718177 https://mp.weixin.qq.com/s/H4XoR1LZSMH6AxsjZuOw6g 1、多摩川编码器协议 多摩川数据通讯是基于485 硬件接口标准NRZ 协议&#xff0c;通讯波特率为2.5Mbps 的串行通讯&#xff0c;采用差分两…

2024年11月22日Github流行趋势

项目名称&#xff1a;twenty 项目维护者&#xff1a;charlesBochet, lucasbordeau, Weiko, FelixMalfait, bosiraphael 项目介绍&#xff1a;正在构建一个由社区驱动的现代Salesforce替代方案。 项目star数&#xff1a;22,938 项目fork数&#xff1a;2,413 项目名称&#xff1…

使用Kubernetes部署第一个应用

目录 前提条件 启动集群 部署 nginx 应用 创建 YAML 文件 应用 YAML 文件 查看部署结果 理解Pods 相关命令 公布应用程序 问题背景 Kubernetes Service&#xff08;服务&#xff09;概述 服务和标签 为Deployment 创建一个 Service 伸缩应用程序 Scaling&#x…

第T8周:Tensorflow实现猫狗识别(1)

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 具体实现 &#xff08;一&#xff09;环境 语言环境&#xff1a;Python 3.10 编 译 器: PyCharm 框 架: &#xff08;二&#xff09;具体步骤 from absl.l…

使用 OpenAI 进行数据探索性分析(EDA)

探索性数据分析&#xff08;Exploratory Data Analysis, 简称 EDA&#xff09;是数据分析中不可或缺的环节&#xff0c;帮助分析师快速了解数据的分布、特征和潜在模式。传统的 EDA 通常需要手动编写代码或使用工具完成。现在&#xff0c;通过 OpenAI 的 GPT-4 模型&#xff0c…

力扣-Hot100-栈【算法学习day.40】

前言 ###我做这类文档一个重要的目的还是给正在学习的大家提供方向&#xff08;例如想要掌握基础用法&#xff0c;该刷哪些题&#xff1f;&#xff09;我的解析也不会做的非常详细&#xff0c;只会提供思路和一些关键点&#xff0c;力扣上的大佬们的题解质量是非常非常高滴&am…