队列 结构

第六章 设计模式 - 结构型 - 适配器模式

适配器模式的概念 适配器模式(Adapter)是将一个类(对象)的接口(方法或属性)转化成客户希望的另外一个接口(方法或属性) 适配器模式使得原本由于接口不兼容而不能一起工作的那些类(对象)可以一些工作。 适配器又称包装器(wrapper)。 核心就是 适配 做 兼容性 处理 适配器模式示例代码 / ......

第五章 设计模式 - 结构型 - 装饰器模式

装饰器模式的概念 1、讲装饰器模式之前,先聊聊高阶函数。高阶函数就是一个函数就可以接收另一个函数作为参数。 2、给对象动态地添加职责的方式称为装饰者模式。 3、传统的面向对象语言中给对象添加功能常常使用继承的方式,但是继承的方式不灵活,而与之相比,装饰者模式更加灵活,“即用即付”。 装饰器模式的实现 ......
结构型 模式 设计模式 结构

【C++学习笔记】关于类和结构体

类和结构体最大的区别是,类的成员默认是private,结构体的成员默认是public的。 C++保留结构体,是为了C兼容。 类可以有无参构造函数,结构体不可以有无参构造函数。 结构体可以{}直接构造,类不可以。 结构体默认公共继承,类默认私有继承。 类的成员可以初始化,结构体的成员不能初始化,但静态 ......
结构 笔记

用 Go 剑指 Offer 09. 用两个栈实现队列

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入:["CQueue","appendTail","delet ......
队列 两个 Offer Go 09

[软件体系结构/架构]零拷贝技术(Zero-copy)[转发]

0 前言 近期遇到难题:1个大数据集的查询导出API,因从数据库查询后占用内存极大,每次调用将消耗近100MB的JVM内存资源。故现需考虑研究和应用零拷贝技术。 如下全文摘自: 看一遍就理解:零拷贝原理详解 - Zhihu/捡田螺的小男孩 零拷贝是老生常谈的问题啦,大厂非常喜欢问。比如Kafka为什 ......
体系结构 拷贝 架构 Zero-copy 体系

第7章 数据结构算法专题一

单向链表与项目实战 单链表 ​ 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素。链表中的数据是以结点来表示的,每个结点的构成:元素(数据元素的映像)+ 指针(指示后继元素存储位置),元素就是存储数据的存储单元,指针就是连接每个结点的地址数据。 ​ 以“结点的序列”表示 ......
数据结构 算法 结构 专题 数据

【解答】大 SQL 运行查询时,如何判断是否需要进入队列排队等待,还是进入内核执行运算

在数据库运行大 SQL 查询时,可以通过以下几个方面来判断是否需要进入队列排队等待,还是进入内核执行运算: (1)查询语句的复杂度:如果 SQL 查询语句非常复杂,包含多个表的联合查询、子查询、聚合函数等,需要对大量数据进行分组、排序、过滤等操作,那么这个 SQL 查询很可能需要进入队列排队等待,等 ......
队列 内核 还是 SQL

剑指 Offer 09. 用两个栈实现队列

题目描述: 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead , 分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入: ["CQueue","appendTail ......
队列 两个 Offer 09

转(Pytorch项目结构

序 你是否有过这样的经历:炼了一大堆的丹,但过了一周回来看结果,忘记了每个模型对应的配置;改了模型中的一个组件,跑起来一个新的训练,这时候测试旧模型却发现结果跟原来不一样了;把所有的训练测试代码写在一个文件里,加入各种if else,最后一个文件上千行,一个周末没看,回来改一个逻辑要找半天……其实这 ......
Pytorch 结构 项目

结构优于制度,软件开发中的康威定律

hi,我是熵减,见字如面。 从事软件开发的人,都非常的清楚:大部分的软件工程不是一个人的英雄之旅,而是一项非常依赖团队的协作的、共同创造的系统性的工程。 在复杂的团队协作中,仅仅依赖软性的制度和流程规范,在很多的时候,可能不一定能很好的解决问题。在涉及到人的部分,就需要考虑到人们协作的职责结构,能否 ......
定律 软件开发 结构 制度 软件

练习01_基本运算与程序结构

通过之前的练习,我们掌握了Python的安装和环境配置,我们尝试了anaconda的jupyter notebook和百度飞桨PP AI Studio。两个都是非常方便的编程平台,使用者可以根据自己的要求和客观条件进行合理选择。 jupyter notebook的源代码文件默认保存在系统盘的User ......
结构 程序 01

类中转对应json结构

一、实体类 List对应JSONArray[],对象对应JSONObject{} @Data @ApiModel(description = "Department") @Document("Department") public class Department extends BaseMongo ......
结构 json

树的子结构

class Solution { public: bool check(TreeNode* r1, TreeNode* r2) { if(r2==NULL) return true;//如果r2为空,无论r1,都匹配成功 if(r1&&r2) { if(r1->val!=r2->val) retur ......
子结构

线段树模板,两种实现方式(结构体一维数组模拟满二叉树、结构体+链式存储)

简单总结下线段树值得注意的点,对于什么是线段树,网上有非常多大佬写的非常的详细,我这里只是给大家提供两个不同存储结构实现的线段树模板 线段树 主要是实现区间操作,区间查询,有懒标记的线段树能够实现区间更新(包含单点更新),没有懒标记的则只有单点更新(其实也可以区间更新只不过这样是O(n)的时间没啥意 ......
结构 线段 数组 模板 方式

tar查看目录结构(不解开压缩文件)

tar查看目录结构(不解开压缩文件) 只查看目录结构: tar -tvf sns.tar.gz | grep ^d 查看文件列表(包含路径): tar -tf sns.tar.gz unzip查看目录结构(不解开压缩文件) unzip -l sns.zip ......
结构 文件 目录 tar

Linux 系统目录结构

Linux 系统目录结构 登录系统后,在当前命令窗口下输入命令: cd / ll 显示结果 root@iZ2ze1w1u469cd5g30t9kbZ:/# ll total 72 drwxr-xr-x 19 root root 4096 Mar 20 14:51 ./ drwxr-xr-x 19 r ......
结构 目录 系统 Linux

弱语言返回的数值型变量有可能是int,也有可能是string,该如何赋值给结构体

包地址 github.com/jefferyjob/go-easy-util... 介绍 在解析弱语言类型返回的 Json 数据时,我们可能会遇到一些麻烦,比如 Json 数据中的数值型变量既可能是 int,也可能是 string,这就需要我们进行特殊处理。这种情况下,使用 jsonUtil 包中的 ......
数值 变量 语言 结构 string

设计模式:结构型

适配器模式(Adapter Pattern) 适配器模式是一种结构型设计模式,用于将一个类的接口转换为客户端所期望的另一种接口,以便可以使用不兼容的类协同工作。 适配器模式包含三个核心角色: 目标接口(Target):客户端所期望的接口。 源接口(Adaptee):需要被转换的接口。 适配器(Ada ......
结构型 设计模式 模式 结构

数据结构做题笔记

LG2827 [NOIP2016 提高组] 蚯蚓 用单调队列简单维护就可以做到 $O(m\log m) $,但 $m$ 有点大,我们就需要考虑特殊性质。 注意到每次切割的蚯蚓长度一定小于前几次切割的长度(指的是没有每天增加 $q$ 的情况下)。 这样考虑使用队列 $q[3]$ 分别维护还没有切割的, ......
数据结构 结构 笔记 数据

代码随想录Day13-Leetcode239. 滑动窗口最大值,347.前 K 个高频元素,栈和队列总结

239. 滑动窗口最大值 一开始没有思路,暴力了,然后果然超时; 看提示中的单调队列没有特别明白;后面反应过来跟单调栈很像; 也确实很符合本题的情况,一旦队尾出现更大的数,前面更小的数就不需要了, 他们不会成为最大数被弹出后的备选。 值得注意的是本题数次出现区间错误,一开始我的操作居然是删除q[l] ......
随想录 最大值 队列 随想 Leetcode

栈与队列

栈stack 栈是一种容器,也称堆栈,可以存入数据元素、访问、删除元素 特点在于只允许容易的一端(栈顶端指标)进行加入数据和输出 没有位置概念,保证任何时候可以访问、删除的元素都会最后存入的元素,确定了一种默认的访问顺序 由于栈数据结构只允许在一端操作,按照后进先出的原理运作 队列queue 队列是 ......
队列

结构型:策略模式

定义 定义一系列的算法,将他们一个个封装起来,使他们直接可以相互替换。 算法:就是写的逻辑可以是你任何一个功能函数的逻辑 封装:就是把某一功能点对应的逻辑给抽出来 可替换:建立在封装的基础上,这些独立的算法可以很方便的替换 通俗的理解就是,把你的算法(逻辑)封装到不同的策略中,在不同的策略中是互相独 ......
结构型 策略 结构 模式

C#-结构函数Construct语法糖

C#7.0新增的解构函数语法糖 1.解析元组 (var name,var age)=GetUser(); var name; int age; (name,age)=GetUser(); public static (string name,int age) GetUser() { return ( ......
语法 函数 Construct 结构

第二章 1.3节 目录结构与基本运行原理

1.1 Nginx目录结构说明 [root@k8s-master01 ~]# tree /usr/local/nginx/ /usr/local/nginx/ ├── client_body_temp ├── conf # 存放一系列配置文件的目录 │ ├── fastcgi.conf # fast ......
原理 结构 第二章 目录 1.3

C#实现kafka消息队列-Confluent.Kafka

一、本文是C#引用Confluent.Kafka.dll实现kafka消息队列的实际开发例子。在实际开发中遇到9094端口始终消息生产和消费超时的问题,需要对网络白名单进行配置或者直接使用9092端口。大部分Time Out情况与代码无关,跟kafka的安装配置有关。 二、、Nuget中添加引用Co ......
队列 Confluent 消息 kafka Kafka

Redis - 对象结构

其实,Redis 的每种对象都有对象结构与对应编码的数据结构组合而成,进阶 Redis 就需要从它的对象机制开始。 ......
对象 结构 Redis

将一个多维数组整合成树形结构,可以通过递归函数来实现

function buildTree(arr, parentId = null) { let tree = []; for (let i = 0; i < arr.length; i++) { let item = arr[i]; if (item.parentId parentId) { let ......
树形 数组 函数 可以通过 结构

Mysql索引底层数据结构与算法、Explain

为什么建议InnoDB表必须建主键?并且推荐使用整型的自增主键? 如果不由我们人工去创建主键,mysql也会帮我们去建立主键,没有必要把这么简单地工作交给Mysql。整型比较比UUID比较要快,而且更加节省空间。 设置自增有一个考虑就是在插入元素数据的时候由于需要维护一颗B+树,这颗树根据主键排序的 ......
数据结构 底层 算法 索引 Explain

简单数据结构做题记录

CF526F Pudding Monsters 典题,发现这本质上是一个一维问题,一个区间合法当且仅当 $\max - \min = r - l$,枚举右端点维护左端点的变化量,用两个单调栈维护到 $r$ 的最大最小,用线段树维护区间最小值及其个数,由于 $[r, r]$ 满足条件且 $\max - ......
数据结构 结构 数据