不如小布.
码龄4年
求更新 关注
提问 私信
  • 博客:166,197
    166,197
    总访问量
  • 97
    原创
  • 2,033
    粉丝
  • 125
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
加入CSDN时间: 2021-09-26

个人简介:知行合一.

博客简介:

忘忧.

查看详细资料
个人成就
  • 获得2,356次点赞
  • 内容获得587次评论
  • 获得4,071次收藏
  • 代码片获得1,102次分享
  • 博客总排名1,172,250名
创作历程
  • 78篇
    2024年
  • 19篇
    2023年
成就勋章
TA的专栏
  • Redis
    3篇
  • C++
    16篇
  • Linux
    12篇
  • MySQL
    12篇
  • leetcode/牛客
    32篇
  • C语言
    9篇
  • 数据结构
    10篇

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 10

TA参与的活动 1

兴趣领域 设置
  • 编程语言
    c++
创作活动更多

AI 镜像开发实战征文活动

随着人工智能技术的飞速发展,AI 镜像开发逐渐成为技术领域的热点之一。Stable Diffusion 3.5 FP8 作为强大的文生图模型,为开发者提供了更高效的图像生成解决方案。为了推动 AI 镜像开发技术的交流与创新,我们特此发起本次征文活动,诚邀广大开发者分享在 Stable Diffusion 3.5 FP8 文生图方向的实战经验和创新应用 本次征文活动鼓励开发者围绕 Stable Diffusion 3.5 FP8 文生图方向,分享以下方面的内容: 1. 技术实践与优化 - Stable Diffusion 3.5 FP8 模型架构解析与优化技巧 - 文生图生成效果的提升方法与技巧 - 模型部署与加速策略,例如使用 Hugging Face、Diffusers 等工具 - 针对特定场景(例如二次元、写实风)的模型微调与定制化开发 2. 应用场景探索 - Stable Diffusion 3.5 FP8 在不同领域的应用案例分享,例如游戏设计、广告创意、艺术创作等 - 利用 Stable Diffusion 3.5 FP8 实现图像编辑、图像修复、图像增强等功能的探索 - 结合其他 AI 技术(例如 NLP、语音识别)构建更强大的应用 3. 创新应用与思考 - 基于 Stable Diffusion 3.5 FP8 的创新应用场景设计 - AI 镜像开发的未来发展方向的思考与展望 - 对 AI 镜像开发伦理、安全等问题的探讨

37人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

Redis篇三:在Ubuntu下安装Redis

Redis也是一个客户端-服务器结构的程序(MySQL也是)。自带了命令行客户端(也就是上面所展示的那样)图形化界面客户端(桌面程序、web程序)基于redis的api自行开发的客户端在之前我们说到的redis快,是相较于MySQL这样的关系型数据库而言的,如果是和内存中的操作变量相比,就是慢了。但是还需要根据场景来判断是否需要redis。比如说在一个单机中,当需要存储用户id和与之对应的年龄,那么是直接在内存中使用unordered_map呢?还是使用redis呢?
原创
博文更新于 2024.08.23 ·
1313 阅读 ·
19 点赞 ·
11 评论 ·
12 收藏

Redis篇二:特性介绍及应用场景

几乎所有的编程语⾔都提供了类似字典的功能,例如 C++ 里的 map、Java 里的 map、Python 里的 dict 等,类似于这种组织数据的方式叫做基于键值对的方式,与很多键值对数据库不同的是,Redis 中的值不仅可以是字符串,而且还可以是具体的数据结构,这样不仅能便于在许多应用场景的开发,同时也能提⾼开发效率。我们现在已经知道Redis是在内存种存放数据的,但是我们又知道内存的数据式易失的,比如进程退出、系统重启都会造成内存中的数据丢失,因此Redis也是支持持久化的。,其中有关于缓存的讲解。
原创
博文更新于 2024.08.22 ·
869 阅读 ·
21 点赞 ·
0 评论 ·
29 收藏

Redis篇一:初识Redis

used by millions of developers as a database,cache streaming engine,and message broker.——开源的内存数据存储,被数百万开发人员用作数据库、缓存流引擎和消息中间件。我们先来看看一个单机架构,就是只有一台服务器,这个服务器负责所有的工作。初期,我们需要利用我们精干的技术团队,快速将业务系统投⼊市场进行检验,并且可以迅速响应变化要求。
原创
博文更新于 2024.08.21 ·
1287 阅读 ·
39 点赞 ·
9 评论 ·
19 收藏

牛客TOP101:寻找峰值

我们先取到数组中间的值,让它与它的前一个或者后一个进行比较(下面的代码实现是与后一个进行比较),如果大于的话,说明它。,之间排除一半数据,如果小于的话,说明后一个值大于它,那么。,然后不断循环,最终的值就是我们需要的结果。这个很重要,要记住。
原创
博文更新于 2024.07.26 ·
602 阅读 ·
21 点赞 ·
3 评论 ·
4 收藏

牛客TOP101:二分查找-I

使用双指针算法,因为它是有序的,我们直接判断数组最中间的值,进行比较,如果大于目标值,说明结果在数组的左半区间,那么我们之间将左半区间当成一个完整的数组,这样我们一次就可以排除一半的数据。
原创
博文更新于 2024.07.26 ·
546 阅读 ·
7 点赞 ·
0 评论 ·
5 收藏

牛客TOP101:删除有序链表中重复的元素-II

一开始按照我的思路,就是同样使用三个指针进行标记,如果cur和next的值一样,那么就使用一个变量去保存这个出现的重复值,然后从cur一直将等于该值的结点删除,如果cur和next不等于,那么三个指针就集体向后移动。然后看了题解,重新开辟一个虚拟头节点,使用两个指针进行标记,只要cur和next不想等,那么就将cur连接到虚拟头节点上。思路很简单,但是当我实际写的时候,发现要处理的边界情况蛮复杂的,因为这个就相当于原地删除,情况很复杂,有兴趣的可以试试。两个代码我都会贴上。
原创
博文更新于 2024.07.25 ·
574 阅读 ·
10 点赞 ·
1 评论 ·
6 收藏

牛客TOP101:删除有序链表中重复的元素-I

原因:首先删除一个结点,本质上就是将删除结点的前一个结点的next,指向被删除节点的下一个,所有需要三个指针来标记。使用三个指针prev,cur,next分别标记连着的三个结点,如果prev和cur的值相等,那么就删除cur。
原创
博文更新于 2024.07.25 ·
387 阅读 ·
6 点赞 ·
0 评论 ·
1 收藏

牛客TOP101:链表的奇偶重排

使用一个指针指向头部,然后再一次走两步,就可以遍历到奇数结点了,将其一一拷贝构造到一个新链表上即可。然后再指向头节点的下一个结点(可能为空,需要判断),重复上面的操作即可。
原创
博文更新于 2024.07.24 ·
410 阅读 ·
7 点赞 ·
2 评论 ·
6 收藏

牛客TOP101:判断一个链表是否为回文结构

我们知道,回文的结构就是从前和从后遍历的结果是一样的,那么我们就可以先将链表保存一份,然后进行逆置,与原链表进行比较,判断是否相同就可以了。
原创
博文更新于 2024.07.24 ·
511 阅读 ·
7 点赞 ·
0 评论 ·
1 收藏

牛客TOP101:单链表的排序

left和mid一次走一步,right一次走两步,这样当right到最后一个结点时,mid就在中间,然后再让left->next指向nullptr,断开两个链表。按我们以往的排序算法来看,针对链表来说都是太不合适,因为很多都会出现指针前移后移,后移还好说,前移对于链表来说就太难了,而且大部分都是某一个位置和另一个离它很远的位置进行比较交换位置,这在链表中是不切实际的。其原理就是先通过递归将一个链表分成一个一个单个的结点,然后两两进行比较、排序、连接,这是第一次排序,再往后就是。,其实针对于单个链表的排序,
原创
博文更新于 2024.07.20 ·
774 阅读 ·
11 点赞 ·
5 评论 ·
15 收藏

牛客:TOP101链表相加(二)

运算也很简单,取出链表中的数据,进行相加,将结果重新构建一个结点(为了方便连接,我们可以先开辟一个头节点),然后连接到我们的头节点上,然后两个链表都往后移,进行下一位运算,一直到结束。这里要注意两个链表长度不一样,可能会遇到一个链表先走完的情况噢。按照我们习惯的加法运算,肯定是要从个位开始相加,然后十位……,但是在链表中如果我们先运算后面的,那么接下来我们是无法找到前一位的。想要解决这个问题也很简单:。逆置完成之后我们就可以从头开始相加了。那么接下了就是两个链表一位一位进行相加了,要注意进位问题噢。
原创
博文更新于 2024.07.20 ·
627 阅读 ·
9 点赞 ·
0 评论 ·
6 收藏

牛客TOP101:两个链表的第一个公共结点

如果两个链表相交的话,它们相交之后的长度是一样的,我们不用考虑。问题就在于我们不知道两个链表的前面的长度,不知道它们何时会相遇,那么我们可以先求出两个链表从头到尾的长度,求它们的差,让长度长的先走它们的长度之差步,这样它们剩余的路径长度就一样了。
原创
博文更新于 2024.07.19 ·
605 阅读 ·
19 点赞 ·
3 评论 ·
5 收藏

牛客TOP101:链表中倒数最后k个结点

求的是倒数第k个结点,我们可以先让一个快指针走k步,慢指针指定头节点,这样快慢指针之差就是倒数第k个结点到空节点的距离,因此只要快指针走到空,那么慢指针指向的就是倒数第k个结点。
原创
博文更新于 2024.07.19 ·
420 阅读 ·
4 点赞 ·
0 评论 ·
0 收藏

牛客TOP101:链表中环的入口结点

【代码】牛客TOP101:链表中环的入口结点。
原创
博文更新于 2024.07.18 ·
860 阅读 ·
18 点赞 ·
4 评论 ·
4 收藏

牛客TOP101:判断链表中是否有环

快慢指针,原理就是快指针一次走两步,慢指针一次走一步,快指针会先进入到环中进行循环,慢指针后进行。以相对来看,快指针是比慢指针多走一步,只要进入到环中,那么快指针迟早会追上慢指针。如果没有环,就会走到nullptr。
原创
博文更新于 2024.07.18 ·
396 阅读 ·
12 点赞 ·
0 评论 ·
2 收藏

牛客TOP101:合并k个已排序的链表

因此我们就可以采用归并排序的思想,分治。其原理就是先两两进行合并,比如:下标为1和2的合并,3和4的合并,依次类推。多个链表的合并本质上可以看成两个链表的合并,只不过需要进行多次。最简单的方法就是一个一个链表,按照。另外一个思路,我们已经可以完成两个链表的合并了,那么这个工作就可以抽象出来,不去考虑这个工作。那么问题就转化成了将一个数组中的两两值(链表)进行合并。的思路,循环多次就可以了。
原创
博文更新于 2024.07.16 ·
484 阅读 ·
11 点赞 ·
5 评论 ·
9 收藏

牛客TOP101:合并两个排序的链表

与正常的合并两个有序数组思路一样,这里可以定义一个头节点(虚拟节点),可以方便我们一开始进行连接。用两个指针标记两个链表的结点,进行循环比较,谁小谁连接到我们开辟的头节点上。最后判断谁没连接完,直接连接上就可以了。
原创
博文更新于 2024.07.16 ·
350 阅读 ·
3 点赞 ·
1 评论 ·
1 收藏

protobuf简介

编写 .proto ⽂件,⽬的是为了定义结构对象(message)及属性内容。使⽤ protoc 编译器编译 .proto ⽂件,⽣成⼀系列接⼝代码,存放在新⽣成头⽂件和源⽂件中。依赖⽣成的接⼝,将编译⽣成的头⽂件包含进我们的代码中,实现对 .proto ⽂件中定义的字段进行设置和获取,和对 message 对象进行序列化和反序列化。
原创
博文更新于 2024.07.16 ·
22089 阅读 ·
44 点赞 ·
10 评论 ·
99 收藏

牛客TOP101:链表内指定区间反转

如果翻转的区间包含了头节点,那么翻转之后的函数返回值就不再时原来的头节点了,而是我们翻转之后的结点(做过翻转链表这个题就知道为什么了),如果翻转区间不包含头节点,那么最终的返回值依旧是原来的头节点。(因此这里是需要进行判断的)我们可以将翻转区间之外的部分先忽略掉,这样问题就转化为了翻转整个链表。在翻转完成后,在将剩余的部分连接起来就可以了。这道题和反转链表的区别在于:它仅仅只翻转其中的某一个区间,但是我们可以将问题进行转化,转化为翻转链表。我在代码实现部分详细说明的每一步的代码意义,相信会对大家有所帮助。
原创
博文更新于 2024.07.15 ·
896 阅读 ·
24 点赞 ·
6 评论 ·
17 收藏

牛客TOP101:反转链表

具体做法就是,使用cur标记当前结点,代表这我们将要翻转这个结点的指向,prev指向它的前面的一个结点,next保存它后面的一个结点,然后循环修改cur的指向结点就可以了。简单粗暴的写法,就是从头到尾挨个将所有结点的指向翻转即可。需要注意的是,翻转之后会失去原有指向的结点,所以需要提前保存。
原创
博文更新于 2024.07.15 ·
498 阅读 ·
15 点赞 ·
1 评论 ·
2 收藏
加载更多