自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [Forest]<二叉排序树>增删查

二叉排序树废话:我又来做笔记了!这次是跟着《大话数据结构》巩固了一些树方面的知识,然后来做以下二叉排序树的笔记,之后打算把什么A树B树黑树白树都看一下(好像大话数据结构里没有讲红黑树,但红黑树挺有意思的),也估计会一节一节的做笔记,我不得不说,数据结构是一个很有意思的东西(虽然我到现在都没有搞懂图),当然配合算法就更有意思了。毕竟现在的网络世界就是构建在一个又一个天才般的数据结构和算法的基础之上嘛。好!废话不多说,开始讲二叉排序树。(基本照着大话数据结构念)树的介绍这里就不过多介绍了树的排序

2022-04-23 23:24:05 527

原创 lept_json的学习之API

lept_json的学习之API这一节就整理一下所有的api先从整个JSON开始Parse用户只能用到parse,像parse_value、parse_whitespace之类就属于内部函数了int lept_parse(lept_value& v, const char* json){ lept_context c; int ret; assert(&v != NULL); c.json = json; c.stack = NULL;//初始化堆栈 c.size =

2022-04-21 15:27:22 435

原创 lept_json的学习之stringify

lept_json的学习之stringify这一节我们讲解所有类型的生成Stringify。其实stringify的意思本不是生成,而是字符串化,但为了方便理解,我直接称之为生成(generate)也是可以的。Stringify生成器它生成得好,可以生成出很整洁的字符串,方便我们阅读,不过在这里我们只进行字符生成,不进行排版操作,所以最后生成出来的就是一长串的挤在一行里的字符串。在这里我们也能想到,生成器的操作就是解析器反过来,所以它大致的架构也是一个循环里套一个switch语句。这里为了代码

2022-04-21 14:22:21 431

原创 lept_json的学习之parse_object

lept_json学习之parse_object这一节讲parse_object数据结构JSON的Object 是以键值对的方式存储的。{ key:value}这里我们默认key为JSON字符串。要表示键值对的集合,数据结构有很多种:动态数组(dynamic array):可扩展容量的数组,如 C++ 的 std::vector。有序动态数组(sorted dynamic array):和动态数组相同,但保证元素已排序,可用二分搜寻查询成员。平衡树(balanced tree):平衡二叉

2022-04-21 13:10:48 958

原创 lept_json的学习之parse_array

lept_json库的学习array这一节将parse_array

2022-04-21 11:31:50 663

原创 lept_json库的学习之parse_string

lept_json库的学习4这一章我们来讲字符串的解析Parse_String首先,我们先来探讨一下解析字符串可能会遇到的问题:问题一:小明到底说了什么?比如说,我想要在字符串里包含""双引号,这是很正常的,举个例子:"//这是context识别的头双引号小明对小红说:"长大后,我就要娶做我老婆。""//这是context识别的尾双引号如果我是用json保存一段剧本(文本信息)那么包含双引号就是很自然的事情,但是对于电脑来说,如果我们不特别指名,电脑可能会解析为:"//这是context

2022-04-20 18:41:56 496

原创 lept_json的学习之parse_number

lept_json库的学习3上一篇我们讲完了Parse()里的Null/Bool两种类型的解析函数。这一篇我们就讲下Number类型的解析函数一、Number语法要想写好解析器,我们脑子里必须要有一个Number的语法框架。整数 123负数 -123浮点数 123.3小数 0.123科学计数法 1E10、1E-10这里不得不用这张路径图来直观的表示一下了,因为这张图真的很直观。跟着这张路径图,我们可以大致的写出number的解析函数: //直接很粗暴的定义了一个宏来判断ch是否是数字

2022-04-17 21:09:33 344

原创 lept_json的学习之parse和parse_null/bool

lept_json库的学习2上一篇讲了JSON库主要有Parse和Stringify两个功能,我先来讲讲Parse,因为叶老师说Parse搞定了,Stringify很简单。Parse()函数架构跳过空白函数()Parse_Value函数()跳过空白函数()举个例子" {object}"我实际上是怎么敲的呢?把我的操作换成转义字符:“\n\t{object}\n" —————这里暂时不考虑花括号{…}里的空白WhiteSpace那么整个parse函数就只需要三步:

2022-04-16 23:40:10 340

原创 lept_json的学习之JSON

lept_json库的学习1从两个星期前开始,在github上跟着叶劲峰老师的lept_json学习了一遍,现在来回顾一下整个过程,做些笔记之类的。本人的记录风格是废话一大堆,所以不爱看的可以骂我。一、 什么是JSON一开始我是完全不知道json是什么的,在我初步了解完c语言,而c++还没学多少的时候,我就在github上看到了这个项目,当时看到个#ifndefine都是懵的,看叶老师讲为什么宏要写在do{}while里面看了半天。现在看来,其实懂了就是懂了,没懂就去看懂。JSON呢,主要有两

2022-04-16 18:16:25 386 1

空空如也

空空如也

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

TA关注的人

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