队列 数组 字典 容器
c#-随机数组
public static int[] GenerateRandowArray(int maxSize,int maxValue) { Random rd = new Random(); int[] arr = new int[(int)((maxSize+1) * rd.NextDouble () ......
树状数组
###一. 概述 树状数组是一种支持数组的单点修改,以及求前缀和(区间求和)的一种简单数据结构,作为线段树的下位替代 简单来说,树状数组就是利用lowbit(二进制化最后一位表示的值)的性质,把n个节点串起来,隐式地构造一棵树 每个节点x的父亲是x+lowbit(x),当前x节点左边最大的节点是x- ......
树状数组
树状数组, 可以高效地计算数列前缀和, 它的查询(求前缀和) 和更新(修改) 操作都可以在 O(logn) 的时间完成 tr[i] 存储以 i 为终点, 长度为 lowbit(i) 的区间 修改: for( int i = x ; i <= n ; i += lowbit(i) ) tr[i] += ......
如何给正在运行的docker容器添加端口映射
我们都知道启动docker容器的时候可以使用-d参数进行端口映射,但是如果你的容器已经创建出来了但是突然又想要添加一个端口映射,这时总不能重新创建一个容器吧,之前的工作不都白费了吗 有一个办法就是先将当前已经配置过的容器打包成新的镜像,然后用这个镜像生成一个新的容器,这样所做的工作既不会丢失,又能在 ......
6344. 字典序最小的美丽字符串-343
字典序最小的美丽字符串 如果一个字符串满足以下条件,则称其为 美丽字符串 : 它由英语小写字母表的前 k 个字母组成。 它不包含任何长度为 2 或更长的回文子字符串。 给你一个长度为 n 的美丽字符串 s 和一个正整数 k 。 请你找出并返回一个长度为 n 的美丽字符串,该字符串还满足:在字典序大于 ......
Dockers下php容器中安装redis扩展
首先进入php容器 docker exec -it 容器ID或名称 查看php安装位置 which php 查看php已安装扩展 php -m 1、下载redis 扩展包 redis扩展 下载地址 【https://pecl.php.net/package/redis 】下载相应版本的扩展 2、解压 ......
NOI / 1.8编程基础之多维数组
11:图像旋转 1.描述 输入一个n行m列的黑白图像,将它顺时针旋转90度后输出。 2.输入 第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1 <= n <= 100,1 <= m <= 100。接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素 ......
NOI / 1.8编程基础之多维数组 11:图像旋转
描述 输入一个n行m列的黑白图像,将它顺时针旋转90度后输出。 输入 第一行包含两个整数n和m,表示图像包含像素点的行数和列数。1 <= n <= 100,1 <= m <= 100。 接下来n行,每行m个整数,表示图像的每个像素点灰度。相邻两个整数之间用单个空格隔开,每个元素均在0~255之间。 ......
Collections:Java常见并发容器
JDK 提供的这些容器大部分在 java.util.concurrent (JUC)包中。//concurrent同时发生的 1.ConcurrentHashMap : 线程安全的 HashMap 在 ConcurrentHashMap 中,无论是读操作还是写操作都能保证很高的性能:在进行读操作时( ......
创建队列时对结构体指针的理解
1 #include <stdio.h> 2 #include <stdlib.h> 3 4 #define ElemType int 5 6 // 定义队列结点 7 typedef struct QNode 8 { 9 ElemType data; 10 struct QNode* next; 1 ......
将数组清空
给你一个包含若干互不相同整数的数组nums,你需要执行以下操作直到数组为空 : 如果数组中第一个元素是当前数组中的最小值则删除它 否则,将第一个元素移动到数组的末尾 请你返回需要多少个操作使nums为空 ###1. 逆向思维 class Solution { public: long long co ......
查看docker容器日志
要查看Docker容器的日志,可以使用以下命令: docker logs [OPTIONS] CONTAINER 其中,OPTIONS可以是以下选项之一: -f:跟踪日志输出,类似于tail -f命令。 --since:仅显示指定时间之后的日志,格式为YYYY-MM-DDTHH:MM:SS。 --u ......
Java根据Integer数组(有null值)递归构造二叉树
二叉树: public class TreeNode { int val; TreeNode left; TreeNode right; TreeNode() { } TreeNode(int val) { this.val = val; } TreeNode(int val, TreeNode l ......
【剑指 Offer】 51. 数组中的逆序对
【题目】 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。 示例 1:输入: [7,5,6,4]输出: 5 限制:0 <= 数组长度 <= 50000来源:力扣(LeetCode)链接:https://leetcode.cn ......
Java二维数组
大家好,我是筱筱,这里主要分享的是个人日常学习java的随笔,如果您对本篇有不同的方法和建议,欢迎您在评论区留言指正,您们的留言和点赞是我继续学习和分享的动力,非常感谢观看! ......
HashMap的数组长度为何必须是2的n次方
扩容方便,数字位移计算方便效率高; 计算元素下标使用的方式是key的hash & (数组length - 1),由于length是2^n,转换成二进制后2^-1最低位就全部都是1,比如111,就相当于是数组长度的掩码,那么hash & 111就可以将数组的每一位都覆盖,加入数组长度不是2^n,那么l ......
优先队列
优先队列有两个分支,一个是小根堆,一个是大根堆。 这是一个优先队列的定义: priority_queue<int> q; 默认是大根堆。 大根堆,也就是堆顶是最大的数,按着降序排到堆底。 小根堆,也就是堆顶是最小的数,按着升序排到堆底。 大根堆定义: priority_queue<int> q; 由 ......
c语言创建队列的链式存储
#include<stdio.h> #include<stdlib.h> typedef struct LinkNode { int data; struct LinkNode *next; } LinkNode; typedef struct Link { LinkNode *front,*rea ......
C++ STL容器
vector 变长数组, 倍增的思想 string 字符串, substr() , c_str() queue 队列, push() , front() , pop() priority_queue 优先队列, push() , top() , pop() stack 栈, push() , top ......
2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。 给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和 由于答案可能非常大,请返回对 109
2023-04-29:一个序列的 宽度 定义为该序列中最大元素和最小元素的差值。 给你一个整数数组 nums ,返回 nums 的所有非空 子序列 的 宽度之和 由于答案可能非常大,请返回对 109 + 7 取余 后的结果。 子序列 定义为从一个数组里删除一些(或者不删除)元素, 但不改变剩下元素的 ......
C++中的STL容器和算法
C++ STL(标准模板库)提供了一组丰富的容器和算法,使得开发者能够更加高效地编写程序。本文将介绍STL中的一些常用容器和算法。 容器 vector vector是一个动态数组,可以在运行时调整大小。它的优点在于可以快速地访问元素,缺点是在插入和删除元素时需要移动后面的元素。 #include < ......
树状数组 好题整理
树状数组 好题整理 [SDOI2009] HH的项链 离线询问后,按右端点升序排序,考虑建立一个树状数组,只包含 0/1,把含每种颜色的点中最靠右的位置打上 1 的标记,询问 $[l, r]$ 答案即为 $query_r - query_{l - 1}$,可以证明,如果一个相同颜色的点的位置对答案有 ......
数组模拟实现数据结构
数组模拟链表实现 ① 单链表: 邻接表 (存储图和树) ② 双链表: 优化某些问题 单链表 int e[N] 存储 val , int ne[N] 存储 next //单链表模板 int head,e[N],ne[N],idx; //head表示头节点的下标,e[i]表示节点i的值,ne[i]表示节 ......
力扣---1493. 删掉一个元素以后全为 1 的最长子数组
给你一个二进制数组 nums ,你需要从中删掉一个元素。 请你在删掉元素的结果数组中,返回最长的且只包含 1 的非空子数组的长度。 如果不存在这样的子数组,请返回 0 。 提示 1: 输入:nums = [1,1,0,1]输出:3解释:删掉位置 2 的数后,[1,1,1] 包含 3 个 1 。示例 ......
4-28打卡c++ string容器
1 #include<iostream> 2 #include<string> 3 using namespace std; 4 //assign 5 void test01() 6 { 7 string str1; 8 //截取三个字符 9 str1.assign("hello,world", 3 ......
第三章-栈 队列和数组
栈 stack 数据接口三要素 逻辑,运算,存储 只允许在一端进行数据插入和删除操作. LIFO规则,last in first out 先进后出 联想到烤串.doge 卡特兰数(catalan),n个不同元素进栈,出栈元素不同排列的个数为 顺序栈 链栈 只在头结点插入和删除就是链栈 队列 FIFO ......
RabbitMQ 实现消息队列延迟
1.概述 要实现RabbitMQ的消息队列延迟功能,一般采用官方提供的 rabbitmq_delayed_message_exchange插件。但RabbitMQ版本必须是3.5.8以上才支持该插件,否则得用其死信队列功能。 2.安装RabbitMQ延迟插件 检查插件 使用rabbitmq-plug ......
SpringBoot RabbitMQ死信队列
1. 死信定义 无法被消费的消息,称为死信。 如果死信一直留在队列中,会导致一直被消费,却从不消费成功,专门有一个存放死信的队列,称为死信队列(DDX, dead-letter-exchange)。 死信队列 DLX,Dead Letter Exchange的缩写,又死信邮箱、死信交换机。其实DLX ......