![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 65
atao777
这个作者很懒,什么都没留下…
展开
-
检测是否为二叉搜索树
题目描述: 给定一个树状结构(可能不是树),检查它是否是二叉搜索树。如果答案为YES,则输出“YES”及其叶子节点总数;否则,输出“NO”。 输入: 第一行:1个数字n 以下n几行:每行包含两个值x和y,表示具有 key 的节点是具有 key 的节点x的父节点y。第一个y是 的左孩子x,第二个y是 的右孩子x。如果y是-1,则没有 的对应子代x。请注意,树中所有节点的键都是不同的且为正的。 输出: 如果输入树是二叉搜索树,则输出“YES”及其叶子节点总数;否则,输出“NO”。 代.原创 2021-07-30 22:20:38 · 90 阅读 · 0 评论 -
Dijkstra-单源最短路径-java实现
问题描述 求从 开始的所有点的最短路径的长度s。点 id 是从 1, 2, ... 到 N。 输入 N, M, S 后面是 M 行,每一行是u v w,代表一条从u到到v长度为 的路径w。 输出 N行,每一行是s到第i个点的距离。如果无法到达,则目的地为 -1。 尺寸 N <= 1,000,000 M <= 2,000,000 w >= 0 总长度以 为界int32_t 难点: 时间限制:1.5s 内存限制:200M 为了保..原创 2021-07-30 22:15:55 · 113 阅读 · 0 评论 -
最高频元素的频数(排序+滑动窗口)
问题: 元素的 频数 是该元素在一个数组中出现的次数。 给你一个整数数组 nums 和一个整数 k 。在一步操作中,你可以选择 nums 的一个下标,并将该下标对应元素的值增加 1 。 执行最多 k 次操作后,返回数组中最高频元素的 最大可能频数 。 方案: ①排序,将无序数组转化成有序 ②滑动窗口,从左到右,右窗口右移,求左右差值,当值大于给定k时,回溯,左窗口右移,否则只移动有窗口,每次移动取一次最频率。 代码: class Solution { public int maxFrequ翻译 2021-07-19 21:27:24 · 138 阅读 · 0 评论