logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

C++STL容器string第二讲--string常用接口,插入删除接口,替换replace,正反向查找,模拟迭代器的实现和常用接口的模拟实现

本文介绍了C++ string类的常用接口及底层实现,重点内容包括: 核心操作: 增:append()多种重载实现字符串追加 删:erase()三种删除方式(位置/迭代器/区间) 改:replace()实现子串替换 查:find()/rfind()查找子串位置 截取:substr()获取子串 输入:getline()按分隔符读取 性能警示: erase和replace是性能杀手,需谨慎使用 底层实

文章图片
#c++#java#开发语言
C++STL容器string--迭代器,string的接口,string的遍历,访问方式

本文介绍了C++中迭代器与容器操作的基础知识,主要内容包括: 迭代器的作用与基本用法:迭代器是STL六大组件之一,提供统一访问容器元素的方式,类似指针但非指针。介绍了begin()/end()遍历方法。 范围for循环:简化容器遍历的语法糖,默认值拷贝,需加引用才能修改容器元素。 auto关键字:自动类型推导,简化长类型名,但有使用限制。 迭代器类型:四种迭代器(正向/反向、普通/const)的区

文章图片
#c++
C++ STL 容器与数据结构详解:deque 底层迭代器、priority_queue 优先队列、堆排序原理、冒泡排序泛型实现

本文系统讲解 C++ STL 中几个核心容器的底层实现原理及常用数据结构。主要内容包括:deque 的双端队列设计——通过中控数组(map)管理多个固定大小缓冲区,实现头尾 O(1) 操作的同时支持随机访问;priority_queue 优先队列的堆适配器机制及其默认大顶堆行为;堆(Heap)作为完全二叉树的数组映射关系,以及向上/向下调整算法和堆排序实现;冒泡排序的泛型函数对象模式。文章穿插代码

文章图片
#c++#数据结构#java
C++--vector第二讲:手写 C++ STL:vector 源码剖析与迭代器失效分析

本文深入剖析了C++ STL中vector的底层实现与迭代器失效问题。首先解释了vector的三指针内存布局(_start、_finish、_end_of_storage)及size与capacity的区别。然后详细讲解了构造函数实现,特别是支持任意容器迭代器的区间构造模板。重点分析了reserve扩容时的深拷贝陷阱,指出memcpy浅拷贝会导致非POD类型数据错误。文章核心探讨了insert操作

文章图片
#c++#java#android
java入门----JDK和IDEA下载安装环境搭建保姆级教学

本文主要简单讲解了上面是java以及我们为什么要学java,java有何优势,详细地讲解了如何搭建java编程环境和IDEA,IDEA是java开发很有用的工具。接着我们利用IDEA编写了我们第一个JAVA程序,后续会简单介绍IDEA的相关外貌设置和重点的JAVA语法讲解。本文存在的任何错误请求指点,大家一同进步!

文章图片
#java#开发语言
C语言数据结构--二叉树和堆

本文介绍了树和二叉树的基本概念及性质。树是一种非线性数据结构,具有层次关系,由根节点、子节点等组成。重点讲解了二叉树的概念、特殊类型(满二叉树和完全二叉树)及其重要性质。文章还对比了数组顺序存储和链式存储的优缺点,并引出堆的概念,说明堆是完全二叉树的一种特殊形式,需要同时满足结构规则和值的大小规则(大根堆/小根堆)。最后指出堆与普通完全二叉树的区别在于必须符合特定的值排序规则。

文章图片
#c语言#数据结构#开发语言
C语言入门指南:从零到精通

本文介绍了C语言的基础知识。C语言是一种广泛应用于计算机编程的高级语言,最初为Unix系统开发而设计。文章解释了C语言程序需要通过编译器编译链接生成可执行文件,并推荐使用VS2022作为开发工具。通过"Hello World"示例展示了基本程序结构,强调了main函数作为程序入口的重要性。还介绍了printf等库函数的使用方法、C语言的32个关键字以及字符与ASCII编码的关系

文章图片
#算法#c语言
到底了