05 2023 档案
摘要:215、数组中的第K个最大元素(堆排序,优先队列) 题目说明 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 解题思路1:优先队列
阅读全文
摘要:155、最小栈(栈) 题目说明 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。 void push(int val) 将元素val推入堆栈。 void pop() 删除堆栈顶部的元素。 in
阅读全文
摘要:22、括号生成 题目说明 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 解题思路1 直接每一个位置都放'('或者')',共有2的2n次方种组合。再设置一个isLegal函数判定最终生成的字符串是否合法,合法则加入最终结果。此法可以通过限定第一个和最后
阅读全文