排序后扫一遍,维护当前分组方案,尽量加入人数少的组。如果某些组再也不可能加入了就统计最小值,如果每组都加入过了相同的实力值就新开一组。 因为组的信息具有单调性,所以可以用双端队列 \(O(n)\) 维护。 code: #include<bits/stdc++.h> using namespace s ...
分类:
其他好文 时间:
2021-06-20 18:04:28
阅读次数:
0
题目: 请判断一个链表是否为回文链表。 思路: 使用链表放入元素 从两边同时移出比较 (一)代码 你是星河 ...
分类:
其他好文 时间:
2021-06-02 13:18:36
阅读次数:
0
LinkedList的全面说明: 1)LinkedList底层实现了双向链表和双端队列的特点 2)可以添加任意元素(可重复),包括null 3)线程不安全,没有实现同步 linkedList底层结构 LinkedList添加的源码分析 linkedlist.add(1); linkedlist.ad ...
分类:
其他好文 时间:
2021-05-24 15:34:54
阅读次数:
0
最近在LeekCode用java写一些算法时,经常遇到要使用栈和队列结构,使用栈的话,Stack已经不被推荐使用了,所以栈和队列我们通常都是用LinkedList这种双链表结构实现。Linkedlist是一个双向链表,操作起来非常方便,java也封装了很多的方法在这个双向链表里面。 题目:使用栈,L ...
分类:
其他好文 时间:
2021-05-24 10:25:56
阅读次数:
0
(1)数据结构:LinkedList是一个实现了List接口和Deque接口的双端链表。 (1-1)双端链表: 双端链表与单链表的区别在于它不只第一个链结点有引用,还对最后一个链结点有引用。 (2)线程安全:线程不安全。 (3)修改操作:LinkedList底层的链表结构使它支持高效的插入和删除操作 ...
分类:
其他好文 时间:
2021-05-24 07:18:22
阅读次数:
0
原题链接 考察:双端队列bfs 思路: 双端队列常用于距离只有0,1的情况.当距离为0时,更新的点放在队头.当距离为1时,更新的点放在队尾. 判断01距离不用写冗长的if代码.可以参照方向数组预设距离为0的斜杠应该有的方向. 这里当出队的距离才是确定了此点的最短距离. 1 #include <ios ...
创建队列 #创建队列 queue=deque() #这里创建的是双端的 添加元素 #append()方法 O(1) queue.append(1) queue.append(2) queue.append(3) print(queue) #[1,2,3] 获取即将出队的元素 # O(1) temp1 ...
分类:
编程语言 时间:
2021-04-05 12:30:54
阅读次数:
0
这道题强制在线,那么考虑在线算法 好像复杂度低的可以使用平衡树,但是我们这里使用分块算法 因为数据量不是特别大 因为是在前面加一个后面删一个,所以我们考虑使用双端队列来维护这个信息 这样修改的时候,可以把前面的块的末尾加到后面的块,这样每块的大小都不会发生改变 #include<bits/stdc+ ...
分类:
其他好文 时间:
2021-03-30 13:28:17
阅读次数:
0
仅供自己学习 思路: 前面做过102,题目几乎相同,只是输出的方式不同,下意识BFS就选择了队列,但是发现不能解决,因为是单向取单向入得结构,不能从满足一左一右的输出形式。上课的时候了解到一个双端队列,刚好可以满足,只需要一个标记此时是左输出还是右输出即可。当时只想用一个双端队列即可,但是发现写着还 ...
分类:
其他好文 时间:
2021-02-18 13:57:19
阅读次数:
0
剑指 Offer 59 - I. 滑动窗口的最大值 Offer_59_1 题目详情 方法一:暴力方法+双指针 package com.walegarrett.offer; /** * @Author WaleGarrett * @Date 2021/2/12 18:06 */ import java ...
分类:
其他好文 时间:
2021-02-16 12:10:19
阅读次数:
0