自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 模拟实现STL中的list容器

本文介绍了C++ STL中list容器的模拟实现方法。首先设计了双向循环链表的节点结构,包含数据域和前后指针域。然后重点实现了list迭代器类,通过重载运算符模拟指针行为。最后构建了list类,包括构造/析构函数、元素访问接口以及O(1)时间复杂度的插入删除操作,使用哨兵节点简化边界处理。完整实现展示了list作为双向链表的核心特性和优势。

2025-08-30 15:26:00 918

原创 模拟实现C++中的string类型:从底层理解字符串操作

本文介绍了如何手动实现一个简化版C++ string类,包含核心成员变量设计、构造与析构函数、基本操作实现、字符串修改操作以及查找功能。关键点包括:使用动态分配的字符数组存储字符串内容;实现深拷贝避免内存问题;通过reserve和resize管理内存容量;重载运算符支持字符串操作;提供迭代器支持。该实现展示了string类底层工作原理,包括内存管理、容量调整和字符串操作等核心功能,为理解标准库string的实现机制提供了参考。

2025-08-27 13:15:57 624

原创 模拟实现C++ STL中的vector容器

摘要:本文详细介绍了C++ STL中vector容器的模拟实现,重点分析了其核心成员变量、构造函数/析构函数、迭代器设计、容量管理以及元素访问与修改操作。通过三个关键指针(_start、_finish、_end_of_storage)实现动态数组管理,展示了push_back、insert、erase等核心操作的实现细节,包括扩容策略、元素移动和迭代器失效处理。该实现完整还原了vector的基本功能,为理解STL容器底层机制提供了实践参考。

2025-08-25 13:32:15 707

原创 C++实现常见的排序算法

1. 插入排序直接插入排序希尔排序2. 选择排序选择排序堆排序3. 交换排序冒泡排序快速排序4. 归并排序归并排序以上就是今天要讲的内容,本文简单给大家介绍了常见的几种排序算法,这些排序算法还是比较重要的,在找工作面试的过程中可能也会被问到,所以还是尽可能将其掌握。

2025-08-23 15:05:08 896

原创 C语言实现堆排序和TopK问题

本篇文章将上一章实现的堆这种数据结构进行运用,介绍了两个堆的经典应用场景,堆排序问题和TopK问题。

2024-11-17 10:54:19 1060

原创 C语言实现堆(优先级队列)

本章使用C语言实现了数据结构中的堆,堆的实现并不复杂,难点在于对于堆结构的理解,堆的应用也是非常广泛的,值得我们去亲自实现它。

2024-11-08 17:03:37 1258 1

原创 C语言实现队列

本章使用C语言实现了数据结构中的队列,队列的结构也不是很难,实现难度也不是很大,但是队列的作用却很大,值得我们去亲自实现它。

2024-09-29 11:52:07 1675 2

原创 C语言实现栈

本章使用C语言实现了数据结构中的栈,栈的结构比较基础,实现难度也不是特别大,但是意义非凡,值得我们亲自去实现它。

2024-09-24 12:13:30 1860 2

原创 C语言实现双向链表

本章使用C语言实现了数据结构中的双向链表,对于数据结构的初学者来说有一定难度,但对于提升对链表的理解来说意义非凡,值得我们亲自去实现。

2024-09-13 11:50:55 2616

原创 C语言实现单向链表

本章使用C语言实现了数据结构中的单向链表,难度也不高,但值得作为学习数据结构的人去亲自实现一下。

2024-09-09 21:22:46 2569

原创 C语言实现顺序表

本章使用C语言实现了数据结构的入门结构顺序表,难度比较低,但值得我们每个人去亲手实现一下。

2024-09-08 11:51:48 1328

原创 MIDI音乐编程(有手就行)

MIDI音乐编程,不涉及底层原理,有手就行。

2024-09-01 13:05:17 2550 4

原创 C语言工程实践实现完整的五子棋项目四(最终章)(人机对战部分和文件存储部分)

C语言工程实践实现的五子棋项目第四章(最终章),需要熟练掌握C语言的语法及使用,本章主要实现了人机对战部分和文件存储部分。

2024-08-25 16:03:33 1341

原创 C语言工程实践实现完整的五子棋项目三(游戏内容部分)

C语言工程实践实现的五子棋项目第三章,需要熟练掌握C语言语法及使用,本章主要实现了五子棋游戏内容部分的逻辑。

2024-08-21 16:19:38 1135

原创 C语言工程实践实现完整的五子棋项目二(游戏菜单和玩家信息操作部分)

C语言工程实践实现的五子棋项目第二章,需要熟练掌握C语言语法及使用,本章主要实现了游戏菜单和玩家信息操作部分。

2024-08-19 22:00:53 1145

原创 C语言工程实践实现完整的五子棋项目一(玩家信息部分)

C语言工程实践实现的五子棋项目第一章,需要熟练掌握C语言语法及使用,本章主要实现了玩家信息基本操作注册、登录等部分。

2024-08-18 14:25:58 1551

原创 C语言通讯录动态版本

C语言实现的动态通讯录,实现了动态内存开辟的方式管理通讯录大小并将信息存储在文件中,适合学完C语言语法的人进行练手。

2024-08-10 16:45:59 2132

原创 C语言通讯录静态版本

C语言实现的静态通讯录,可作为对C语言基本语法使用的练手项目。

2024-08-09 16:24:48 997

原创 C语言实现简单的扫雷小程序

C语言版简单的扫雷游戏,难度不高,适合新手,而且具有一定的可玩性

2024-08-02 19:46:53 1385

原创 C语言整人恶作剧小程序(慎用)

C语言的整人恶作剧小程序,可以拿去给你的好朋友试一试

2024-07-31 14:41:57 1002

原创 C语言实现简易版三子棋

C语言版简易三子棋游戏

2024-07-30 17:59:39 1093

空空如也

空空如也

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

TA关注的人

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