- 博客(15)
- 收藏
- 关注
原创 Linux环境基础开发工具简解
yum 使用方式:yum install -y 包名字,例如yum install -y gcc 移除软件:yum remove 包名字 下载yum源,复制相关链接地址,使用指令wget + 链接下载 vim 用来编写代码,但是目前不是主流 三种模式 命令模式 vim默认打开时就是该模式 指令 复制:yy ,也可以加上数字代表同时复制n行 粘贴:p,注意:可以在p之前输入数字,代表要p多少行 撤销已进行复制粘贴的操作:u 对撤销操作
2024-09-02 00:03:53 597 3
原创 Linux常用指令和权限
基本指令(常用) ls -al 显示当前目录下所有的dir mkdir 创建文件/目录 当我们想要递归式创建目录时,使用指令mkdir -p 后面接上目录名字 mkdir -p test1/test2/test3... 最好使用touch创建文件 cd 进入某个指定的目录 rm 用于删除目录/文件,但是在root模式下会询问 使用rm -rf 可以不用询问直接递归式删除指定目录中的所有文件 man man后面接指令名字,可以查询
2024-09-01 23:48:38 324
原创 C/C++面试重点-->C语言阶段内存函数的实现
memset和memcmp笔试面试考察的相对较少,并且如果大家掌握了前2个函数,那么这2个函数实现和理解应该不在话下,这里就直接给出memset和memcmp的作用和代码实现。如果确定拷贝字节的src和dst位置的内存不会出现内存重叠的情况时,最好还是使用memcpy,会出现内存重叠就是用memmove。函数是 C 语言标准库中的一个函数,用于将内存块的前 n 个字节设置为特定的值。:本文笔者介绍C语言阶段常考的内存函数的使用和模拟实现的细节及完整代码,外加详细图解!祝大家都能找到理想的实习/offer!
2024-08-31 23:06:38 1191
原创 高阶数据结构-->图(中)
我们只需要在查找某个元素的双亲节点时,同时直接将该元素路径上的所有非root的元素的root修改为root即可!路径压缩时,当查找的元素的值不是root的下标时,直接更新为root,再继续向上更新,直到将该路径上所有的元素的值都更新为root的下标。此时当我们要查找5的根的时候,会不断往上更新,直到找到1为止,类比到海量数据时,速度降低的会愈发明显
2024-08-29 21:57:24 746 5
原创 高阶数据结构-->图(上)
非人话:图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成的一种数据结构,用于表示多对多的关系。图可以表示为G(V, E),其中G表示一个图,V是图G中顶点的集合,E是图G中边的集合。(树是一种特殊的图),更多的图的分类之后提到再细说。人话:简单来说,图是一种表示型数据结构,意在表示某种场景,为了表示不同的场景衍生出了各种类型的图,图的顶点可以看作是一个元素,图的边可以看作元素与元素之间的某种关系(并不一定是单一的关系).2.O(1)的时间复杂度判断2个顶点的连接关系,并取到权值。
2024-08-28 19:50:32 1134 3
原创 C++入门-->初识内存管理
简单来说,在申请自定义类型的空间时,new会调用自定义类型的构造函数,delete会调用自定义类型的析构函数,这在c语言中的内存申请函数无法做到的。如果类中重载了new,那么当new这个类类型的对象时,会自定调用该类中重载的operator new来申请内存。同样的,如果要申请连续的自定义类型的空间,使用new _type[],释放使用delete[] + _type。本篇主要解释了C/C++中动态申请/释放内存的方式,以及C++和C语言中中申请内存方式的相同/异点。
2024-08-27 10:27:41 510 1
原创 C++入门-->类和对象(下)
简单来说,就是C++作为一门面向对象的语言,为了更好的灵活性和方便,引入了运算符重载的概念,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数列表,其返回值类型与参数列表与普通的函数类似。:友元函数可以直接访问类的私有成员,它是定义在类外部的普通函数,不属于任何类,但需要在 类的内部声明,声明时需要加friend关键字。友元类的所有成员函数都可以是另一个类的友元函数,都可以访问另一个类中的非公有成员。3.用于内置类型的运算符,其含义不能改变,例如:内置的整型+,不 能改变其含义。
2024-08-26 11:23:15 406
原创 C++入门-->类和对象(中)
使用列表初始化需要注意的是,成员变量在声明中的次序就是初始化列表的初始化顺序!,与其在初始化列表中的先后次序无关!此处同样可以一使用,但是使用之后无参和有参会合并,不能再显示写无参构造函数。拷贝构造函数的参数只有一个且必须是类类型对象的引用,使用传值方式编译器直接报错,:本篇笔者主要概述类的六大默认成员函数的的3种,即默认构造,拷贝构造,析构函数。:当我们创建一个类但是什么不写时,该类被称为空类,编译器会自动生成默认函数,当然上述只是做个示范,上述类很明显只需要值拷贝,所以不需要显示的写拷贝构造。
2024-08-26 09:54:29 178
原创 C++入门-->类和对象(上)
类的静态成员函数因为没有this指针这个参数,所以类的静态成员函数也就无法调用类的非静态成员变量。1.C++编译器给每个“非静态(static修饰)的成员函数“增加了一个隐藏 的指针参数,让该指针指向当前对象(函数运行时调用该函数的对象)类定义了一个新的作用域,类的所有成员都在类的作用域中。很显然,只计算了对应类的成员变量的大小,sizeof(t1)=4,sizeof(f1) = 8;顾名思义,就是private中的成员是私有的,外界不能直接调用,只能在类内部调用。在为实例化出对象之前,类是没有大小的。
2024-08-25 11:47:08 394
原创 C++入门->初探缺省参数,函数重载和引用.
简单来说就是:当外部调用该函数时,如果没有显示的传参,则该函数会使用缺省的值!当然模板或许是更好的选择,但是在此先不谈。指针中的权限问题与引用一致,类比即可。运行一下,看是什么现象?
2024-08-25 10:18:58 467
原创 C++入门-->初探命名空间与IO流
所以C++中引入了一个新的概念->namespace,即命名空间,它的出现有效的解决了命名冲突的问题,各个命名空间有着各自独立的作用域,每个namespace中的变量在不展开命名空间的情况下一般互不影响。如果觉得指定作用域繁琐,也可以直接展开某个命名空间,展开后,其作用域中的成员可以直接使用,无需再指定作用域,当然如果展开后存在变量名冲突的问题时,还是要指定作用域来调用相应的成员。C++中的输入输出一般是使用cin和cout来完成的,当然,在C++中也可以使用C语言中的输入scanf和输出printf。
2024-08-24 12:56:50 284
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人