
数据结构
文章平均质量分 69
DioDid
希望更好的学习
展开
-
Z/Y组合子的python实现 ( Y combinator / Z combinator )
后面的正文中通过Python实现Z组合子,说明了Z/Y组合子的来由,使用了环境图(cs61a课程中有)辅助说明,是最好的解释Z/Y组合子的文章; 还在最前面总结了各种不同的实现方法, 便于日后查看原创 2022-10-01 16:03:28 · 1339 阅读 · 0 评论 -
KMP算法快速学习(手动求Next和Nextval数组步骤)(C实现万用代码)
本文介绍了next和nextval数组的来源,求法KMP算法的原理还给出了最关键的做题的机械化步骤和万用实现代码原创 2022-02-04 00:15:44 · 4832 阅读 · 0 评论 -
使用栈求 中缀/后缀/前缀 表达式的代码
类比我的上一篇文章, 前缀/中缀/后缀----表达式之间的相互转换使用栈求中缀表达式的值的方法:将数字存入一栈, 运算符存入另一栈. 入栈的运算符必须大于栈顶运算符的优先级才能入栈, 小于等于均将栈顶运算符出栈后计算处理. 如图作a(值为4)*=b(值为5)从而得到a的值为20. 左括号类比栈底处理, 右括号类比原数组循环结束后, 排空运算符堆栈的操作.实现代码如下:#include <iostream>#include <cmath>using namespace s原创 2021-04-19 19:53:49 · 364 阅读 · 0 评论 -
前缀/中缀/后缀----表达式之间的相互转换
前缀/中缀/后缀----表达式三种表达式三者之间互相转换中缀->前缀 and 中缀->后缀后缀->中缀 and 前缀->中缀后缀->前缀 and 前缀->后缀代码实现中缀转后缀中缀转前缀三种表达式前缀表达式: +ab, 这种也叫做波兰式中缀表达式: a+b, 这种正常表达式需要带括号, 而波兰式不用带括号后缀表达式: ab+, 这种也叫做逆波兰式三者之间互相转换中缀->前缀 and 中缀->后缀a+b..原创 2021-04-18 12:46:48 · 24253 阅读 · 0 评论 -
不可能不合法的出栈序列规律总结
参考诸多答案,写出表述最准确的答案如下:为方便表述,入栈序列称呼为从前到后,出栈顺序称呼为从左到右要分析给定出栈顺序是否合法,采用从左到右逐个分析法,对于从左到右每一个元素可以逐个作如下分析:不考虑该元素较后序列元素不考虑该元素左边出现过的较前序列元素在满足以上两个条件的情况下,看该元素其他较前元素,在右边出现顺序是否是逆序的若每一个元素都满足上述条件,则该出栈序列合法,反之有一个不满足则不合法...原创 2021-04-15 11:31:48 · 3218 阅读 · 0 评论 -
卡特兰数 catalan 证明图示
卡特兰数典型应用在进栈出栈,括号配对问题上。但是这些问题都是体现在一维上,其证明并不形象直观。在这里有一种二维直观作图的方法,证明卡特兰数:回到卡特兰数最原始的定义,将进栈视为右移,出栈视为上移,总和为0视为目的地在对角线上,部分和不小于0视为路径不超过对角线。并且通过一种对称方法,求出了不合法路径总数,从而得到合法路径总数。参考视频:https://www.bilibili.com/video/av69351289...原创 2021-04-13 13:06:34 · 1548 阅读 · 0 评论