logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

新手入门:用 C++ 实现开放定址法哈希表(附完整代码解析)

为什么需要State?直接用 “是否为空” 判断不行吗?一开始我也这么想,但删除元素的时候发现问题了:比如我删除了下标 5 的元素,如果把它设为EMPTY,下次查找下标 6 的元素时,遇到下标 5 的EMPTY就会停止,导致找不到 6 的元素(因为当初插入 6 是因为 5 冲突了,现在 5 设为 EMPTY,查找逻辑会误以为后面没有数据)。EXIST:这个位置有有效数据;EMPTY:这个位置从来没

#散列表#c++#哈希算法 +2
【C++ 泛型编程】基于哈希表封装 unordered_set(附完整源码解析)

_tables(__stl_next_prime(0)) //让他为素数,因为素数只能被他自己和1整除,可以更好的进行取模运算得到更多的不同风格值。//但是这样也会有新的问题出现需要解决,总之没有一个万能的方法,每个方法都有好处和坏处。*/ //这样写有问题,因为newhash是临时对象,出了循环会调用析构函数,虽然vector会调用析构。//但是我们又无法析构Node,何不直接将_tables的

#散列表#c++#哈希算法 +3
深入理解C++栈(Stack)实现:从容器适配器到模板编程

栈(Stack)是一种后进先出(LIFO)的数据结构,它只允许在容器的一端进行插入和删除操作。// 默认使用deque。:stack不是独立容器,而是基于其他容器的适配器。是一个容器适配器,基于其他序列容器实现其功能。// 使用vector作为底层容器。:首尾操作高效(O(1)),内存动态增长。// 使用list作为底层容器。push操作:要么成功,要么保持栈不变。// 使用默认deque容器。p

#c++#开发语言
手把手实现C++ STL队列(queue):从底层容器到接口封装

队列(Queue)是计算机科学中最基本的数据结构之一,它遵循先进先出(FIFO)的原则。在C++标准模板库(STL)中,std::queue是一个容器适配器,提供队列的功能。本文将深入探讨如何从零实现一个完整的队列类,并分析其设计思路和实现细节。

#c++#开发语言
NVIDIA RTX 4090:AI大模型训练与推理实战的好帮手

NVIDIA RTX 4090于2022.10.12正式上市,不仅标志着硬件又一次大的提升,也标志着ai大模型迎来新的发展本文将深入探讨RTX 4090在AI与深度学习领域的实战应用,分享从环境配置到模型优化的完整经验,帮助您充分利用这张性能猛兽的潜力。

#人工智能
C++ set 容器全方位解析:从基础用法到实战示例

set的定义格式为set<元素类型> 容器名,支持多种初始化方式:cpp// 方式 1:默认初始化(空 set)// 方式 2:用初始化列表初始化(C++11 及以上)// 自动去重+排序,结果:2 5 9// 方式 3:用其他容器的迭代器初始化// 结果:1 3 4默认情况下,set按less<T>升序排序,但实际开发中可能需要自定义排序(如降序、按字符串长度排序等)。此时可以通过 “指定比较函

#c++#开发语言
初学者入门 C++ map 容器:从基础用法到实战案例

cppmap<键的类型, 值的类型> 容器名。这里key是string类型(比如 “你好”“hello”),value也是string类型(比如 “世界”“world”),定义了一个 “字符串→字符串” 的映射表m。常见定义示例:cpp// 学号(int)→ 姓名(string)// 单词(string)→ 出现次数(int)// 字符(char)→ 权重(double)先掌握基础操作:定义、插入

#c++#开发语言#学习
C++ 三大函数神器:lambda、bind、function 实战详解

lambda 表达式本质是匿名函数对象—— 就是不用给函数起名字,写完就能用,适合实现简单、短期使用的逻辑(比如你的加法逻辑,只用来配合 bind,没必要单独写一个命名函数)std::bind是头文件里的工具,作用是绑定函数的部分参数、调整参数顺序,生成一个新的 “参数调整后” 的函数简单说:它能把一个 “多参数函数” 变成 “少参数函数”(固定部分参数),或者重新排列参数的顺序也是头文件里的工具

#c++#学习#数据结构 +1
MySQL数据库基础入门总结(从0到1)

数据库特点SQL Server微软产品,适合 .NET 开发Oracle强大但复杂,适合大型系统MySQL最流行,开源,高并发,适合互联网项目PostgreSQL功能强大,开源,学术背景SQLite轻量级,嵌入式H2Java 内嵌数据库👉 其中,MySQL 是我们学习和实际开发中最常用的数据库之一。👉 用来定义结构createdropalter数据如何存储如何建立索引如何查询和更新数据MySQ

#数据库#mysql#linux
Linux:匿名管道的四种情况(进程间通信四)

了解了匿名管道的五种特性后,我们必须得谈谈匿名管道的四种情况--快读慢写,快写慢读,只写不读,只读不写,接下来我将一一讲述,话不多说现在开始。

#linux#运维#服务器
    共 38 条
  • 1
  • 2
  • 3
  • 4
  • 请选择