- 博客(30)
- 收藏
- 关注
原创 windows中查看cmd和powerShell的编码方式
修改 CMD 或 PowerShell 的默认编码,可以修改注册表或配置启动参数。这样,你就可以轻松查看和修改终端的编码方式了!在 PowerShell 配置文件(
2025-04-08 08:55:48
314
原创 威佐夫博弈论
((3, 5))同样是必败态,此时(k = 2),(\lfloor 2\times\frac{1 + \sqrt{5}}{2}\rfloor = 3),(3 + 2 = 5),以此类推。对于两堆物品,若两堆物品的数量分别为(a)和(b)((a \leq b)),当且仅当(a = \lfloor k\times\frac{1 + \sqrt{5}}{2}\rfloor),(b = a + k)((k)为自然数,(\lfloor\ \rfloor)表示向下取整)时,该状态为必败态。
2025-04-01 20:48:29
409
原创 数据结构值ST表的详细讲解浅显易懂
ST表,即Sparse Table(稀疏表),是一种基于倍增思想的数据结构。它主要用于在**O(1)**时间复杂度内查询给定区间的最值(最大值或最小值)。其原理是通过预处理,利用倍增的思想,将每个区间的最值信息存储起来,以便后续快速查询。
2025-04-01 17:42:54
460
原创 java中什么是包装类
Java 5 引入了自动装箱(Autoboxing)和拆箱(Unboxing)特性,简化了基本类型与包装类之间的转换。自动装箱是指基本类型数据在需要对象的环境中时,会自动转为对应的包装类对象;自动拆箱则是当需要基本数据类型的值时,包装类对象会自动转换为基本数据类型。在计算机编程领域,尤其是 Java 语言中,包装类(Wrapper Class)是用于将基本数据类型包装成对象的类。为每个基本数据类型设计了对应的包装类,即。Java 中有 8 种基本数据类型,分别是。
2025-03-25 08:34:08
163
原创 辨析http请求、响应的格式,以及URL在其中扮演怎样一个作用
HTTP 请求的格式包括:请求行(方法、目标、版本)。请求头(元信息)。空行(分隔符)。请求体(可选,用于传输数据)。
2025-03-05 21:28:21
582
原创 《Java 中 Thread 类的基本用法总结》
在 Java 编程中,Thread类是实现多线程的核心类之一。下面将对Thread类在创建线程、线程中断、线程等待、线程休眠和获取线程实例等方面的基本用法进行总结。
2025-01-05 12:47:48
373
原创 进程和线程的区别与联系及内存管理的差别
区别 资源分配角度 进程:是操作系统进行资源分配的基本单位。这意味着每个进程都有自己独立的一套资源,包括内存空间(代码区、数据区、堆、栈)、文件描述符、进程控制块(PCB)等。例如,在一个操作系统中运行的两个不同的浏览器进程,它们分别有自己独立的内存区域来存储浏览器程序代码、用户访问的网页数据、下载文件的缓存等,并且各自有独立的文件描述符来管理对本地文件的访问,如保存书签文件等。 线程:是进程的一个执行单元,它自己不拥有系统资源,而是和同进程内的其他线程共享进程的所有资源。比如在一
2025-01-05 12:23:30
1033
原创 Linux编译器-gcc/g++使用
此选项将尽量使用动态库,所以生成文件比较小,但是需要系统由动态库。在编译链接时并没有把库文件的代码加入到可执行文件中。默认生成的二进制程序,是动态链接的,这点可以通过。首先要检查代码的规范性、是否有语法错误等。在编译时默认使用动态库。把库文件的代码全部加入到可执行文件中。就不再需要库文件了。编译到汇编语言不进行汇编和链接。此选项对生成的文件采用静态链接。在预处理结束后停止编译过程。连接(生成可执行文件或库文件。该选项只进行编译而不进行汇编。以确定代码的实际要做的工作。汇编阶段是把编译阶段生成的。
2024-10-19 23:14:32
498
原创 python的异常处理
try…except的语法结构为: try: 可能会抛出异常的代码 except 异常类型: 异常处理代码(报错后执行的代码)try…except…except的语法结构为: try: 可能会抛出异常的代码 except 异常类型A: 异常处理代码(报错后执行的代码) except 异常类型B: 异常处理代码(报错后执行的代码)
2024-10-16 21:20:50
361
原创 字符串及正则表达式
2.f-string:Python3.6引入的格式化字符串的方式,比{}标明被替换的字符。将bytes类型转换成str类型,需要使用到bytes类型的decode()方法。1.占位符:%s :字符串格式 %d :十进制整数格式 %f :浮点数格式。3.str.format()方法:模板字符串.format(逗号分隔的参数)将str类型转换成bytes类型,需要使用到字符串的encode()方法。2、使用字符串的join()进行拼接。1.字符串拼接及not in。4、用格式化字符串进行拼接。
2024-10-16 20:51:47
713
原创 详述python的列表、元组、字典、集合的基本语法及其函数
是指一系列的按特定顺序排列的元素组成。是Python中内置的可变序列 在Python中使用[]定义列表,元素与元素之间使用英文的逗号分隔。列表中的元素可以是任意的数据类型。1) 使用[]直接创建列表 语法结构如下: 列表名=[element1,element2,......elementN]2)使用内置函数list()创建列表 语法结构如下: 列表名=list(序列)语法结构如下: del 列表名。
2024-10-13 13:49:23
794
原创 Linux编辑器-vim的配置及其使用
1.命令模式(默认模式):用户所有的输入都会当作命令,不会当作文本输入。2.插入模式:写代码,按「i」切换进入插入模式「」,按“i”进入插入模式后是从光标当前位置开始输入文件;按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。3.底行模式:对代码进行保存,退出等。4.替换模式。
2024-10-11 22:42:40
790
原创 通过yum进行linux软件下载
在Linux下安装软件一个通常的办法是下载到程序的源代码并进行编译得到可执行程序但是这样太麻烦了于是有些人把一些常用的软件提前编译好做成软件包可以理解成windows上的安装程序放在一个服务器上通过包管理器可以很方便的获取到这个编译好的软件包直接进行安装软件包和软件包管理器就好比"App"和应用商店这样的关系是Linux下非常常用的一种包管理器主要应用在Centos等发行版上。
2024-10-11 22:00:28
257
原创 linux中将普通用户添加到系统白名单中
打开 sudoers文件,在Allow root to run any commands anywhere 后面 添加一条(把上面的一条内容复制下来 修改用户名即可)
2024-10-10 22:49:38
318
原创 linux常见指令
指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,:对于目录,该命令列出该目录下的所有子目录与文件。命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,
2024-10-09 22:26:01
1206
原创 浅谈双指针来解决两数之和或三数之和
双指针其大体思想是:1.先对数组进行排序,而排序的原因是左右指针其相加大于一个数字,会让指针所指向数字小的往对方的方向走,这就要保证数组的大小的连续性,4.两数相加,如果其大于目标数减去固定的一个数字,那么就让左右指针中相对较小的一个向着对方的方向走去;反之,则让较大的向对方走去。5.结束的条件是左指针大于等于右指针,此时将固定的数字向下走一位;2.固定一个数字,使其三数之和变为两数之和。答案中不可以包含重复的三元组。的第15题和第18题为例。,判断是否存在三元组。
2024-05-03 16:27:04
374
1
原创 浅谈链表中利用快慢指针解决有环问题
那我们就能得到L的长度为nR-x,此时我们让头节点head开始走,并同时创建一个指针,让其从快慢指针相交的地方开始走,此时相交的指针meet距离环入口的距离为R-x,而head距离入口的距离为nR-x,那么此时二者一定会在环入口相交。这题我们还是先创建一个快慢指针,但是此时快慢指针的的起始位置都是一样的,接着遍历寻找二者相交的位置。我们设环的总长度为R,那么快指针所走路程是慢指针的2倍,所以我们就可以列出下列等式。在这个过程中,slow走过的路程为不是环的长度L,与进环后相交之的长度x。
2024-05-03 16:03:05
66
原创 指针(2)进阶指针
例如我规定一个数组各位学过指针初阶的肯定都知道数组的地址是首元素的地址,而一维数组的的首元素是一个数,在所以我们直接用就能得到数组的地址(即首元素地址),此时解引用输出指针我们就数组数组首元素的大小,但是我们如果想让指针指向数组的第二个元素,直接让ptr向后移动一个单位长度(大小为4上面提到过)。int 的大小为四个字节,也就是说数组每个元素大小都是四个字节,并且int *移动一个大小为4个字节,那么ptr=ptr+1,我们就能得到指向第二个数组元素的指针。在这个过程中ptr+1就是指针的移动。
2024-01-31 15:38:52
1489
1
原创 指针(1)初始指针
指针是计算机编程中的一个重要概念,它是用来存储变量地址的一种数据类型。简单来说,指针就是变量的内存地址。例如我定义int a;然后指针就=&a,那么我在屏幕上输出这个指针就相当于输出a的地址;整型指针(int*):指向整型变量的指针。字符型指针(char*):指向字符型变量或字符串的指针。浮点型指针(float*):指向浮点型变量的指针。双精度浮点型指针(double*):指向双精度浮点型变量的指针。结构体指针(struct*):指向结构体类型的指针。
2023-12-16 11:52:18
99
2
原创 关于scanf、gets、getchar和printf、puts、putchar的组成及功能区别详解
format[,argument...通过不同的输入字符可以来输入其相对应的值。
2023-12-01 21:38:47
1423
1
原创 C语言基本排序算法之选择排序、插入排序
在每次找到此时最小值时,用变量a来记录该最小值的下标,最后找到该次循环的最小值,然后通过该下标来找到该元素,用中间变量来与该循环第一个值交换。然后在下一个元素排序,下一个元素是3,不能直接排在4后面否则会使已排序好的数组变成乱序,所以此时3要插入到4的前头才能构成从小到大的有序数组,就是这个i代表已经排好的元素,此次循环要找的是未排序的元素的最小值。依次类推最后得到一个按照从小到大排序的数组。,我们可以直接从名字来了解,就是。
2023-11-30 14:13:43
119
原创 C语言中所有输出字符,超详细
g:6个有效数字的浮点数。%llu : unsigned long long int 类型。%Le :科学计数法表示的long double类型浮点数。%lld : 十进制 long long int类型。%11x:十六进制 long long int 类型。%1lo:八进制 long long int 类型。%e:使用科学计数法的浮点数,指数部分的e为小写。%E:使用科学计数法的浮点数,指数部分的E为大写。%G:等同于%g,唯一的区别是指数部分为E是大写。%Lf:long double类型浮点数。
2023-11-28 18:12:43
2458
原创 算法之冒泡排序详细讲解
可以看见此时数组并不是严格按照从小到大的顺序排列,那么我想要按照从小到大将数组排列起来,我先将数组中的第一个数字‘3’定为最大的数,将3与2比发现3比较大,那么将2与3调换位置。然后再让3和1对比,发现3比1大,那么将3与1调换位置,接着让3和4对比,发现3比4小,那么此时将4作为最大的数字,依次类推,发现4比5小于是把5当做最大的数。此时就相当于原来5个元素的数组已经有一个元素的位置排好了,接下来我们只需要对剩下四个元素进行排列。
2023-11-20 23:21:46
89
1
原创 用c语言递归写出斐波那契数列并加以改进
1.斐波那契数列的第一项和第二项都是1,所以如果 我输入的a是一或者二那么便代表了第一或者第二项此时返回值为一。2.如果输入不是1或者2的数字那么此时会走else这一步,根据递归最终会递归到1和2上。这种递归运算的速度非常慢,加入输入50那么会有非常长的运算时间。首先需要定义一下用递归写的斐波那契数列的函数。更改完后的代码会发出所有项。这便是代码最终成型的样子。优点:代码易懂,好想。改进:将递归换成循环。
2023-11-18 15:14:46
131
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人