ShuoPro
码龄7年
关注
提问 私信
  • 博客:112,145
    112,145
    总访问量
  • 33
    原创
  • 863,847
    排名
  • 50
    粉丝
  • 0
    铁粉

个人简介:做一个简单的人,踏实而务实,不沉溺幻想,不庸人自扰

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2017-11-06
博客简介:

qq_40963043的博客

查看详细资料
个人成就
  • 获得141次点赞
  • 内容获得27次评论
  • 获得445次收藏
创作历程
  • 3篇
    2020年
  • 31篇
    2019年
成就勋章
TA的专栏
  • C++相关
    5篇
  • 算法面试
    4篇
  • leetcode
    3篇
  • 数据结构与算法源码
    3篇
  • cJSON
    10篇
  • linux
    2篇
  • c相关
    10篇
  • 算法第4版
    5篇
  • 数据结构与算法
    13篇
兴趣领域 设置
  • 服务器
    linux
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

183人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

快手实习生面试(C++,一面凉)

中兴的比赛终于结束,终于有时间来回顾一下上次惨不忍睹的面试,害,说实话还是我第一次找工作的面试,居然还是视频面试,中间麦克风也各种出问题,磕磕绊绊面了大概一个小时左右吧,然后就结束了,这里回顾一下面试中的问题以及步骤吧,问题无先后顺序。1 自我介绍(略)2 如何解决菱形继承问题这个问题有印象,当时答地是,基类对象函数必须为纯虚函数。然后面试官也没说对错,就问了下还有别的吗,然后我就说没了。面试官也没说对错就开始下一问了。我查了下,错的太离谱了...答案:两个派生类继承同一个基类,又有某个类同时继
原创
发布博客 2020.05.09 ·
1615 阅读 ·
2 点赞 ·
1 评论 ·
4 收藏

2020中兴捧月算法精英挑战赛-迪杰斯特拉派初赛(未来城市物流系统)总结

疫情关系,导致科研一直没法开展,老板着急,自己也无所事事。在清明过后看到了中兴的算法精英挑战赛,然后就开始了算法之旅,这里自己做一点总结,为自己以后争取点教训吧。数据分析的重要性这次比赛真的让我体验到了前期工作的重要性,因为这次比赛是我第一次单人赛,像去年参加华为软挑时都是有队友的,很多前期题目解析、数据分析的工作都由他们完成了,我也主要是在他们的思路之上思考算法。所以这次比赛,我前期工作并没有做的很充足,拿着题目就开始写代码了。根据门派名字就知道,肯定是和迪杰斯特拉算法有关,而且和去年的软挑有一定
原创
发布博客 2020.05.09 ·
1261 阅读 ·
0 点赞 ·
3 评论 ·
1 收藏

C++ 异常:std::bad_alloc, 内存不够了,如何减少代码内存?

对于非嵌入式开发中,空间复杂度相比于时间复杂度确实显得没那么重要,能用数组的都可以尽量避免使用链表,这样减少了代码复杂度,减少了时间复杂度。但是对于一些算法题,对内存有要求的就会出现问题。正如标题所说的,出现bad_alloc异常,一查就知道原来是内存出现了问题。我首先想到是会不会是堆栈溢出,但是很快被我否决,因为代码中我并没有使用递归,也最多就三层函数调用。于是我就查看自己定义的变量...
原创
发布博客 2020.08.12 ·
13852 阅读 ·
1 点赞 ·
5 评论 ·
10 收藏

数据结构与算法——排序之希尔排序

希尔排序是插入排序的升级版,所以呀我们先贴上插入排序算法的源码吧//插入排序void InsertSort(int arr[], int num) { int j; for (int i = 1; i < num; i++) { if (arr[i] < arr[i - 1]) { int t...
原创
发布博客 2019.12.12 ·
219 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

数据结构与算法——排序之堆排序(递归与迭代)

堆排序源码(时O(N*logN),空O(1))/* 这里不妨先回忆一下,完全二叉树的性质: 如果对一颗有n个结点的完全二叉树的结点按层序编号(从上到下,从左到右),对任意结点i(1 <= i <= n): 1 如果i= 1,则结点i是二叉树的根,无双亲;如果i > 1,则其双亲是节点i/2. 2 如果2i > 0,则结点i无左孩子(其实...
原创
发布博客 2019.12.12 ·
345 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

数据结构与算法——排序之归并排序(递归与迭代)

归并排序源码//合并void Merge(int arr[],int start,int end,int mid,int* tmp) { int i_start = start; int i_end = mid; int j_start = mid + 1; int j_end = end;​ int length = 0;​ while...
原创
发布博客 2019.12.12 ·
288 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

数据结构与算法——二叉树的打印

二叉树的打印这里开始我的数据结构复习之路,很多东西都没有讲到,只是希望起到一个抛砖引玉的作用。当然这里我自己也是参考某网的视频之后的。鉴于时间关系有些题目没在实现对代码的实现,如果有需要的话,可以留言告诉我,我很乐意去解决。二叉树的打印是根据遍历方法来的,有前序遍历、中序遍历、后续遍历以及层序遍历。前三种估计很熟悉了,那么这个讲讲层序遍历。在学过图后,我们知道了广度优先搜索,这里就是同...
原创
发布博客 2019.12.10 ·
1550 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

linux下文件拓展:ftruncate 和 lseek的区别

给自己做个笔记,折腾了我一晚上,我就长话短说。ftruncate其实ftruncate 比较正式的叫法是文件截断,用来截取尾端的一些数据。 原型: int truncate(const char *pathname, off_t length); int ftruncate(int fd, pff_t length);成功返回0,失败返回 ...
原创
发布博客 2019.09.26 ·
1003 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

c++中string类是定义在std命名空间

今天我在练习的时候,突然发现一个问题,我在建一个类的时候,明明加了头文件的可是却还是用不了?如下:#include <string>class Staff{public:private: string m_name; //报错};我感到十分困惑,我明明加了头文件了呀。我想的时候,在平时这样用好像没问题呀,如下:#define _CRT_SECUR...
原创
发布博客 2019.09.24 ·
1676 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

cJSON详细剖析(十)----总结一

cJSON的内容真的不多,毕竟我们只是去查看而不是自己去写,所以总归看得还是很快的。我们毕竟不是自己做项目,只是针对前人做的东西进行理解,学习别人的编程思维。因为cJSON毕竟使用c写的,语法涉及的也并不多,无非就是指针的来回应用,这也说明指针的强大,指针也正是c语言的精髓。然后针对个人的阅读,对cJSON涉及到的知识而自己又不太熟悉的地方做一些总结。const关键词的应用没错,我就想来讲...
原创
发布博客 2019.09.21 ·
453 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

cJSON详细剖析(六)----print_string_ptr()函数(补充)

我又重新把之前的写的博客看了一遍,写的是什么狗屁,我自己看得都费劲,这里我重开一博客把之前在剖析(四)里的内容摘取出来。在分析print_object()函数时,对于出现的print_String_ptr()函数,我们做进一步的分析。下面就是print_String_ptr()函数,我已经贴好了注释,针对给定的text文件,就返回"\"name\""了。当然,上述针对的给定的text字...
原创
发布博客 2019.09.20 ·
952 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

cJSON详细剖析(九)----create_objects()/cJSON_AddItemToObject()函数

这里我们针对test.c里面的create_objects()函数进行向下解析。如上图框住的部分,我们就此来分析cJSON_AddItemToObject()函数。根据参数我们先分析cJSON_CreateString()函数。cJSON_CreateString()此函数在cJSON里面用了一行,为了更好的阅读,我把它按照正常的形式展开了。这段代码很简单,就是新建一个item的c...
原创
发布博客 2019.09.20 ·
13522 阅读 ·
6 点赞 ·
0 评论 ·
27 收藏

cJSON详细剖析(八)----dofile()函数

本想着明天若有时间的话,明天写的,但是,看了看代码,发现很简单。。。所以我就干脆提上日程,今晚把这个给分析了。如上图,我把代码按分号分行也才十来行。一看就很简单嘛。一些简单的注释我写在了后面。我一个一个解释下,权当给自己再学习学习。fopen(文件名,使用文件方式)打开一个文件,返回一个FILE文件指针,第一个参数是文件的地址,可以是绝对地址或者相对地址。第二个参数是打开的方式。...
原创
发布博客 2019.09.19 ·
588 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

cJSON详细剖析(七)----print_value()函数

从 剖析 五 我们可以发现,value()函数里面的print_number()函数以及print_array()函数应该是比较简单的函数。如下图,在剖析四里面,我们分析了print_object()函数,虽然没有分析print_string()函数,当时其调用的都是同一个函数print_string_ptr()。下面我们把另外俩也分析了。print_number()函数这个函数涉及的...
原创
发布博客 2019.09.18 ·
2200 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

cJSON详细分析(五)----parse_value()函数(补充)

因为之前我们给出的例子里面刚开始部分只是涉及到parse_string()函数,我们也只讲了这部分,现在我把parse_value()涉及到的其他几个函数也一起学习一下。parse_number()函数我们先来分析parse_number()函数,根据上图黄色框框住的部分我们知道,parse_number()是用来分析数字或' - '的,那个减号肯定指的是负数嘛。我们跳转进去。代码很简...
原创
发布博客 2019.09.18 ·
1676 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

cJSON详细剖析(四)----cJSON_Print()函数

今天我们讲讲cJSON_Print(json)函数时怎么实现的,我们按住F12点进去(vs编译器)。如上图,我们继续跳。因为p为null,所以这里在else里选中print_object()继续跳转。print_object()print_object()应该算是第一个有内容的函数了,这里我们分析这个print_object()函数。上面图中我做了部分注释,根据...
原创
发布博客 2019.09.15 ·
22417 阅读 ·
8 点赞 ·
3 评论 ·
21 收藏

cISON详细剖析(三)-----parse_object()函数

根据上一个博客,我们应该是调回了parse_object(),为了看得更清楚,我继续把框图贴出来,如下图。那今天我们就来看看parse_object()函数。parse_object()我先把这个函数贴出来。因为有点长,为了清晰的看见我分开为俩部分,中间有一些我做了简单的注释。开头部分我们先看上面这部分,这也是比较简单的部分,我说简单是因为上篇博客分析过了红色框住的部分,感...
原创
发布博客 2019.09.14 ·
927 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

cJSON详细剖析(二)——doit(char *text)函数框架及parse_string()函数分析

这里开始第二篇博客,正式的开始分析函数。doit(char *text)先分析main()函数里面出现的第一个函数吧,doit()这个函数前面有英文的简单介绍此函数是干什么的,大概意思就是将文本解析为JSON格式,然后在转化为文本格式,最后进行打印。我把一些代码自己的注释在了代码后边,如下图:我先把text给贴出来方面大家对着代码观看:我觉得这位作者代码功底很扎实(皮一下很...
原创
发布博客 2019.09.14 ·
1854 阅读 ·
2 点赞 ·
2 评论 ·
9 收藏

cJSON详细剖析(一)----框架

先发发牢骚,作为一个非科班生,最痛苦的就是找不到项目可做。在b站长听了博主codesheep的项目推荐,决定先看看一些写的比较好的源码。第一个就推荐了cJSON,说简单嘛,也就五六百行。今天开始看,争取在科研闲暇之时早点搞完。加油加油,我尽量写的详细一点,不管是给自己还是给读者尽量好的理解。cJSON是一种轻量级的数据交换格式,也可以理解为一种语法。我的理解就是将某一种不友好阅读文本转化为友好...
原创
发布博客 2019.09.13 ·
1050 阅读 ·
6 点赞 ·
2 评论 ·
15 收藏

动态规划(一)一一状态定义和状态转移方程

动态规划真让人看得头疼,这只是一种思想,并没有一定的解题规律,当问题出现的时候,对于不太熟悉动态规划的人来说,确实有点难以想到,一般都是采用暴力求法。这里贴一个知乎链接,我觉得动态规划讲的还挺好的,什么是动态规划?嘿嘿,也不知道会不会有人还会跳回来看看,哈哈。反正是写给自己的,问题不大。既然理解了上面是动态规划,就来几个简单的题目来练练手(题目来源leetcode)。1 最大子序和...
原创
发布博客 2019.09.12 ·
33232 阅读 ·
92 点赞 ·
6 评论 ·
309 收藏
加载更多