![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 50
Jenlibein
这个作者很懒,什么都没留下…
展开
-
[oj实验] DS栈—波兰式,逆波兰式
例如:a +b * (c -d ) - e/f中缀表示就是原表达式去掉括号。根据表达式求波兰式、逆波兰式都是教材第三章表达式求值的思想。求波兰式,需要操作数栈(注意不是计算结果入栈,计算式入栈),运算符栈。区别在于从后往前扫描表达式,换成。栈顶运算符优先级新读入运算符优先级出栈,教材第三章表3.1中的相同运算符优先级(从左往右计算)改为,例如栈顶为,新读入的为,则栈顶优先级新读入的优先级。求逆波兰式,只需要运算符栈。操作数直接输出,操作符按表3.1优先级顺序出栈,输出。原创 2023-10-12 00:43:22 · 136 阅读 · 2 评论 -
DS二叉树—二叉树结点的最大距离
二叉树两个结点的距离是一个结点经过双亲结点,祖先结点等中间结点到达另一个结点经过的分支数。二叉树结点的最大距离是。如果有多个解,输出字典序最小的解(即第一个结点字母更小的,如果第一个字母相同,输出第二个结点字母更小的)。对每棵二叉树,输出树的结点最大距离和最大距离的结点,输出格式见样例。例如,下图所示二叉树结点最大距离是3,C和D的距离。第2行之后的T行,每行为一棵二叉树先序遍历结果(计算二叉树结点最大距离和最大距离的两个结点。距离的计算可以在每颗树中打上。所有结点间距离的最大值。原创 2023-11-02 03:12:48 · 416 阅读 · 1 评论 -
DS队列--银行单队列多窗口模拟(清晰代码注释)
DS队列--银行单队列多窗口模拟的个人思路原创 2023-10-16 17:35:36 · 195 阅读 · 1 评论 -
子串循环问题 (Ver. I)数据结构实验-串
也可以添加“abca”后构成“abcaabca”,其由子串“abca”循环构成,相比之下“bc”只有2个字符,添加的字符量最少。如果不能被整除,说明需要补上几个字母才行,需要补的字母个数为p_len-next[p_len]-(next[p_len]%(p_len-next[p_len]))个。如果p_len可以被p_len-next[p_len]整除(即p_len%(p_len-next[lenp_len)==0),说明该字符串由循环字节组成。设该字符串为str,长度为p_len。先是字串循环的定律。原创 2023-10-20 04:08:05 · 279 阅读 · 1 评论