第五章_德塔数据结构变量快速转换
作者: 罗瑶光, Author:Yaoguang.Luo
基础应用: 元基催化与肽计算 编译机的内存分析机
知识来源,数据结构《Data Structure Using C》仅此而已. 作者敢撰写这本书籍,至少70%能力来自Rohini.V.
内存的结构
1 德塔数据结构变换 最早归纳来自对 雪球新浪的股票数据 web页抓取进行的String格式统一. refer page 508, 528
2 基于String的格式统一, 然后逐步进行文本数据在计算过程中的状态进行分类扩展归纳. refer page 532, 535 string的展开应用归纳过程: (走四方的xml变换 和 亚米的list 还没有迫使作者产生研发swap的动机. )早期作者在设计股市抓取, 发现 雪球, 新浪, 东方, 财富的网页股市数据, 字符串的编码不统一. 于是准备写个自适应的编码变换解析, 根据rest get return的字节码标识来自动变换. 作者的股市string数据在计算过程中要进行加速计算, 于是开始将string[] 变换成list, 这样才有 iterator的buffer加速计算模式, 作者后来在写deta parser的时候, 将string进行 string builder 来做buffer加速计算, 于是 基于 string[], list, iterator, string builder的最早4个data swap 快速变换包引擎开始设计了. 于是就把所有的数据结构变量都扩展归纳了.
3 于是产生array, StringBuilder, iterator, map, 4种 高频内存结构的快速互换. refer page 499, 536, 515, 520
4 最后进行对所有常见数据结构进行统一归纳和快速变换. 作者的研发基础来自2008年 在印度基督大学的C语言数据结构实验室课程. 讲课教授 Rohini. V refer page 492~常见数据结构类型, 罗瑶光画图如下
数据的结构
1 德塔数据结构梳理完整依据 C语言数据结构 思维进行归纳refer page 无
2 归纳包含 array, String, struct object, hash, map list, tree, buffer的数据变换模式. refer page 499, 535, 527, 507, 520, 516, 537,
3 德塔数据结构不包含数据的计算逻辑变换, 仅仅包含数据类型的载体变换. refer page 498
4 数据类型的载体变换通过接口形式表达. 广泛用于工程中. refer page 498
罗瑶光画图
类的结构
1 德塔数据结构的类, 采用VPCS的静态接口模式设计. refer page 492~
2 每一种相同数据类函数封装在同类的文件中. refer page 492~
3 每一个类 主要包含数据变换文件, 数据变换的纠正文件, 数据变换的索引文件. refer page 492~
转换加速
1 数据变换的索引文件, 通过元基花索引24组染色体注册, 进行语言调用加速. refer page 下册597 StaticFunctionMapU_VECS_E
2 数据变换采用静态函数, 加速了function call. refer page 492~全章
3 数据变换的函数 根据功能进行了分类, 于是静态函数文件形成了balanced静态函数集树模式. refer page 下册274 第十六章
不规则对象的变换
1 不规则对象的变换主要包含 邻接矩阵array变换和 类复制. refer page 521
2 邻接矩阵array变换 如 跨格式变换, 如xml, json, officerefer page 558, 516, 503
3 类复制如 deta的TinMap class和 Objectrefer page 527, 881
4 xml和json, 德塔不做加工, 仅仅用google的Gson包引用. refer page 516
场景变换
1 德塔数据结构的场景主要应用在网页html数据抓取, 文本数据计算refer page 508, 492~
2 html数据 主要体现在文字的编码格式变换, 加密变换, 和http response的内容载体变换如json. refer page 508, 555,
3 文本数据计算主要体现在 map和array的变换, 与 list和array的变换, 用于字符串排序加速. refer page, 499, 516, 520
4 在德塔分词场景中体现在另外String与 StringBuilder的加速变换. refer page 536
罗瑶光画图
20220409 截至目前作者接触过得所有计算机变量载体和object对象类型总数, 远远的超过图中的列举类型, 作者发现这些类型, 都或多或少有图中的类型的影子, 或者包含有图中类型的类似结构. 比如枚举作者没有画图, 枚举便类似struct, 同时又具有array的地址连续性, 等作者不多做解释了, 计算机语言书籍 有枚举的标准定义.
每次想到数据结构我能有这种造诣,溯源下,还是对数字逻辑的极其深刻的理解,于是又想起了JPSir.
JPSir was my teacher, every time I thought of him. My eyes such as the lake.
The first story
I still remembered a class where JPSir let us do the assembly language for deletion. He said we can't use 8086/ or other higher vesion to do this logic. So, we try to using 8085. After I searched all the asm commands, I did not find any resource about deletion. Then JPSir came and asked, how does computer deletion? I got results, using n's complement and implement and added 1, if got carry, then did a complement and added 1 again. Then he got a smell, 8086's deletion was truly promoted with this method. After this session, I strongly knowing that science was an evolutional inheritance. For everything we know how to use it, and we also need to know how to make it.
The second story
This was a computer IC class and we needed to do a runtime design of CPU, to make a calculation of each ASM command processing, we also need to draw the state graph. When I finished the question, I saw him towerd with me and looked carefully with my graph, after a while and asked me where did the clock comments? I said at the left parts, he angried with me and said: why you write at the left part? all the book, all the resource was for the right. Suddenly I knew my mistake, and speedly changed to the right side. After this session, I strongly knowing that science was a rigorous and an accuration, everything we know how to use it, but we could not to make change of it.
计算的模式变换
1 德塔数据结构计算的模式变换主要用于 buffer中间态变换. refer page
如混合数列排序的变化
作者的Flow Chat 画图基础来自印度基督大学的MCU at 8085. 导师 JP Sir.
2 buffer中间态包含 map与tree的变换, list与iterator的变换. refer page 520, 537, 516, 515
图中String buffer stack 可先后序列排列, 可断开成链, 高度是iterator对象当前的内存占用大小. 罗瑶光画图
list. toIterator()变换模式优势罗瑶光先生个人认为在计算过程中, 基于内存的占用和寻址效率加速. String to Stringbuilder 变换同理, 对象buffer化能实现内存变量计算和调用进行极限加速. 作者在印度基督大学 学数据结构没有stringbuilder和 iterator的知识点, 在2016年亚马逊的岗位技术经理面试时候, 有几次印度经理多次面试我关于String计算方式, 我当时没有答上细节, 错失了月薪12000美金的工作. 我的罗瑶光画图
3 模式变换计算趋势归纳主要为非线性与线性的降维变换, 通过改变观测面实现. refer page 497
应用
罗瑶光画图