摘要: 题目描述 实现思路一:堆 一种比较经典的做法是:维护一个只有K个元素的最小堆 这样,当前数据流中的第K大元素一定位于堆的顶部(数组头部) 当有新的数据进入时,将其与堆顶元素比较 若堆顶元素更大,则无视新的数据 若堆顶元素更小,则将其移出堆,并将新元素放入堆,再重新整理堆 在C++标准库中,堆可以使用 阅读全文
posted @ 2020-10-24 15:52 BAEBAE996 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 题目描述 实现思路 题目的实质 其实是检查给定的字符串中 是否含有指定顺序的 'a' 'b' 'c'序列 很容易想到用栈来实现 首先,检查给定字符串的长度,如果不是3的倍数,一定不是有效的 其次,遍历字符串 1、若当前栈长度大于等于3,则检查靠近栈顶的3个元素是否分别为 'c',' b', 'a' 阅读全文
posted @ 2020-10-24 11:12 BAEBAE996 阅读(77) 评论(0) 推荐(0) 编辑