数据结构
#
盖世美男子
人生的自传有很多种,关键看我想怎么活!
展开
-
NYOJ 756 重建二叉树
重建二叉树时间限制:1000 ms | 内存限制:65535 KB难度:3描述题目很简单,给你一棵二叉树的后序和中序序列,求出它的前序序列(So easy!)。输入输入有多组数据(少于100组),以文件结尾结束。每组数据仅一行,包括两个字符串,中间用空格隔开,分别表示二叉树的后序和中序序列(字符串长度小于26,输入数据保证合法)。输出每组输出原创 2017-08-09 15:33:11 · 268 阅读 · 0 评论 -
NYOJ 305 表达式求值
表达式求值时间限制:3000 ms | 内存限制:65535 KB难度:3描述Dr.Kong设计的机器人卡多掌握了加减法运算以后,最近又学会了一些简单的函数求值,比如,它知道函数min(20,23)的值是20 ,add(10,98) 的值是108等等。经过训练,Dr.Kong设计的机器人卡多甚至会计算一种嵌套的更复杂的表达式。假设表达式可以简单定原创 2017-08-10 08:31:14 · 248 阅读 · 0 评论 -
= =数据结构 》不定期更
先说明我真的不喜欢之前的学习方式 很赶 而且一无所成 之前的目的是为了考试拿成绩 一直狂刷题 (虽然并没有一直把 嘻嘻嘻) 现在发现我连最基本的都没有搞懂 我怎么去看题啊 根本没有头绪的好吧 即便是搜到了别人的代码 看起来也是很吃力的 效果很慢的 所以我决定 数据结构这个模块 争取把最基本的框架给搞懂= =还有就是在初始化结构体的时候尽量用指针 因为调用函数,如果不用指针的话,有可能在调用的过原创 2017-08-08 16:42:19 · 238 阅读 · 0 评论 -
NYOJ 35 表达式求值
表达式求值时间限制:3000 ms | 内存限制:65535 KB难度:4描述ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式都能求出它的值的计算器,现在请你帮助他来实现这个计算器吧。比如输入:“1+2/4=”,程序就输出1.50(结果保留两位小数)输入第一行输入一个整数n,共有n组测试数据(n<10)。每组测试数据只有一行,是一...原创 2017-08-10 19:21:49 · 260 阅读 · 0 评论 -
并查集的优化——路径压缩和按秩排序
1.路径压缩如果我们合并的树很深,存放父节点的数组已经嵌套了n层,按照传统的做法,我们从最下面的节点去找n节点就要寻找n次,这种做法效率很低。这时候,我们就可以引入路径压缩的概念,路径压缩就是在递归找到根节点的时候,把当前节点到根节点之间所有节点的父节点都设置为根节点。举个例子:经过路径压缩之后,树的形态就变成了下面的样子:我们可以看到经过路径压缩的节点及其子树到根节点的深度减小了很多,所以在以后...原创 2018-04-13 15:11:45 · 1286 阅读 · 0 评论 -
并查集
基础并查集1. 问题来源一些不相交集合的合并和在集合中快速地查询的问题。举个例子,有一群人,他们之间有若干好友关系。如果两个人有直接或者间接好友关系,那么我们就说他们在同一个朋友圈中。随着时间的变化,这群人中有可能会有新的朋友关系,这时候我们会对当中某些人是否在同一朋友圈进行询问。这个问题的解决方法很容易想到简单算法,大概思路是每个人用一个编号来表示他所在的朋友圈,如果有新认识的朋友,我们就合并...原创 2018-04-13 15:15:19 · 236 阅读 · 0 评论