自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 计算机网络2:网络套接字的编程

本文介绍了网络套接字编程的核心概念和UDP协议实现。主要内容包括:1)套接字接口参数说明(socket、bind、listen、accept、connect等函数);2)网络字节序转换函数(htonl等);3)sockaddr结构体的使用;4)基于UDP协议实现简单服务端功能,包含Server类的设计、初始化、启动流程,以及主函数中的翻译功能和群聊功能实现。文章重点讲解了UDP套接字创建、绑定、数据收发等关键步骤,并提供了网络字节序转换和地址结构处理的详细说明。

2026-04-01 22:30:59 56

原创 C++7:STL->List容器

List 是 STL 标准库中的核心容器之一,具有高效的插入和删除操作能力,支持在常数时间范围内进行任意位置的元素操作。。,每个元素都存储于相互独立的节点中。这些节点不仅保存当前数据,还维护着指向前驱和后继节点的指针信息。

2025-11-24 15:18:30 775

原创 C++6:STL->Vector容器

vector是C++标准模板库(STL)中的动态数组容器,位于<vector>头文件中。其定义方式为模板类,允许存储任意类型的元素,支持动态扩容和高效的随机访问。

2025-11-16 16:23:24 952

原创 C++5:STL->string类

函数名称 通过string()来构造一个空的string类对象,即空字符串(2)string类对象的容量操作 函数名称 接口说明 size() 返回字符串的有效长度(即不包括'\0') capacity() 返回当前的string的容量大小 clear() 清空当前string的

2025-11-16 16:23:09 552

原创 C++4: 模板基础

类模板是一种通用的类定义方式,它支持参数化类型的使用。借助类模板,我们能够编写适用于多种数据类型的通用类,从而避免为每种数据类型重复编写相似的代码。STL(Standard Template Library)是C++标准库的核心组成部分,提供了一系列通用模板类和函数,用于实现常见的数据结构和算法。STL的设计基于泛型编程思想,通过模板技术实现高度可复用的组件。

2025-11-15 21:16:14 387

原创 C++3:内存管理

class Apublic://构造函数:_a(a)cout << "进行构造" << endl;//析构函数~A()cout << "进行析构" << endl;return 0;对于上述A类型,使用new分配空间时会自动调用构造函数进行初始化,而使用delete释放内存时会自动调用析构函数完成资源清理。

2025-11-15 19:12:14 430

原创 数据结构7:树形结构->二叉树

使用左孩子-右兄弟的结构定义树的结构。(使用链式结构)

2025-10-23 13:11:34 1014

原创 数据结构6:排序

插入排序是当插入第i(i>=1)个元素时,前面的元素已经排好序了,用,找到插入的位置进行插入,原来的元素位置后移。

2025-10-05 15:16:13 611

原创 C++2:类和对象

this是一个隐含的指针,指向当前对象的地址。它是类的非静态成员函数的默认参数,用于访问调用该函数的对象成员。谁调用了成员函数,this指针就指向哪个类。

2025-09-28 22:29:15 578

原创 C++1:基础语法

命名空间(Namespace)是一种用于组织代码、避免命名冲突的机制。它通过将相关的类、函数、变量等封装在一个逻辑分组内,实现不同代码模块的隔离。缺省参数(默认参数)指在函数定义时为参数预先指定默认值,调用时若未传递该参数,则自动使用默认值。全缺省参数指的是在函数声明或定义时,为所有形参提供默认值。调用这类函数时,可以不传递任何实参,所有参数将使用默认值。半缺省参数指的是 C++ 函数中部分参数带有默认值的情况。函数重载(Function Overloading)是编程语言中允许在。

2025-09-22 17:54:35 862

原创 数据结构5:栈和队列

队列和栈都是线性数据结构,两者的核心区别在于元素进出顺序:栈遵循先进后出原则,而队列采用先进先出机制。//定义一个结构体变量用来存放队列中每一个元素type data;//存放的具体数据//存放每一个队列元素下一个元素的指针}Queue;//定义一个结构体用来存放队列的头节点与尾节点}Node;

2025-09-12 00:27:57 1044

原创 数据结构4:线性表->链表(2)(带哨兵位的双向循环链表的实现)

在一开始的情况下假设只有哨兵位则其中链表的next与prev均指向自己。

2025-09-08 23:37:21 301

原创 数据结构3:线性表->链表(1)【单链表的实现与经典问题】

(1).空格不够时需要增容,容易造成空间浪费(2).顺序表要求数据从头开始进行连续存储,那么从中间插入就要向后挪动位置,效率不高。因此针对顺序表的缺陷设计出链表。

2025-08-23 00:17:56 783

原创 数据结构2:线性表->顺序表

顺序表的本质是一个数组,但顺序表可以动态的进行增删查改。顺序表是一个连续的数据存储结构。

2025-08-11 17:02:32 326

原创 数据结构1:时间复杂度与空间复杂度

本文介绍了算法的时间复杂度和空间复杂度概念及计算方法。时间复杂度通过大O表示法衡量算法执行时间,分为最好、平均和最坏情况,其中以最坏情况为准。举例说明了冒泡排序(O(n²))、二分查找(O(logn))、阶乘递归(O(n))和斐波那契递归(O(2^n))的时间复杂度推导过程。空间复杂度则计算算法运行所需的额外空间,同样采用大O表示法,分析了冒泡排序(O(1))、阶乘递归(O(n))和斐波那契递归(O(n))的空间复杂度。特别指出递归算法的空间复杂度取决于递归深度而非调用次数,因为栈帧空间可重复利用。

2025-08-09 18:39:10 589 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除