- 博客(2)
- 收藏
- 关注
原创 LeetCode 用两个栈实现队列
思路: 定义两个栈A,B,添加元素时全部加到A中,然后当需要删除元素时分三种情况,1、A不空,B空此时第一次删除,将A中元素全部加入到B中,删除。2、B不空,直接删除B栈顶元素。3、A空B空,返回-1 class CQueue { stack<int> stack1,stack2; public: CQueue() { } void appendTail(int value) { stack1.push(value); } .
2020-06-30 21:02:40 222
原创 LeetCode 215题 数组中第k大元素
解法一 使用java自带Arrays.sort()函数并返回 class Solution { public int findKthLargest(int[] nums, int k) { Arrays.sort(nums); return nums[nums.length-k]; } } 解法二 使用java自带的优先队列类 PriorityQueue()利用小顶堆的思想,判断size大于k时删除堆中元素,最终堆顶就是第k大元素 class Soluti.
2020-06-29 15:55:26 141
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人