自定义博客皮肤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 564

原创 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 476

原创 lept_json的学习之stringify

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

2022-04-21 14:22:21 472

原创 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 994

原创 lept_json的学习之parse_array

lept_json库的学习array 这一节将parse_array

2022-04-21 11:31:50 747

原创 lept_json库的学习之parse_string

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

2022-04-20 18:41:56 543

原创 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 395

原创 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 361

原创 lept_json的学习之JSON

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

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

空空如也

空空如也

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

TA关注的人

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