摘要:
func CountMaxRain(t *testing.T){ var height =[]int {0,1,0,2,1,0,1,3,2,1,2,1} leftMax:=make([]int,0,len(height)) rightMax:=make([]int,len(height)) for 阅读全文
摘要:
内存池的实现和管理(一) 内存池的实现和管理(二) 前面两篇博客主要介绍了内存池的原理和实现,这篇博客主要是介绍如何优化多线程安全的内存池 内存池的实现和管理(二)中内存池的实现代码存在的问题 虽然在内存申请和释放的时候,使用lock_guard()实现了多线程安全的内存池,但是频繁的加锁和解锁带来 阅读全文
摘要:
class Solution { public: vector<int>p; void dfs(Node* root) { if(root==nullptr) return ; if (root->children.size() == 0){ p.push_back(root->val); retu 阅读全文
摘要:
#include<iostream> #include<string> #include<string.h> #include<stack> #include<queue> #include<map> #include<set> #include<algorithm> #include<memory 阅读全文
摘要:
进行一次快排即可 class Solution { public: vector<int> exchange(vector<int>& nums) { int le = 0; int ri = nums.size() - 1; while(le<ri){ while (le < ri&&nums[r 阅读全文
摘要:
#include<iostream> #include<string> #include<string.h> #include<stack> #include<queue> #include<map> #include<set> #include<vector> #define ll long lo 阅读全文
摘要:
转载自 https://www.cnblogs.com/zhangbaochong/p/5879263.html c++11中有互斥和条件变量但是并没有信号量,但是利用互斥和条件变量很容易就能实现信号量。 1.信号量 信号量是一个整数 count,提供两个原子(atom,不可分割)操作:P 操作和 阅读全文
摘要:
一、什么是inode节点 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。扇区是磁盘上存储的最小单位 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。 这种由多 阅读全文
摘要:
一、进程共享内存与mmap的关系 进程之间共享内存有两种方式,分别是shm和mmap 1、shm共享内存是多个进程的虚拟地址直接共享同一块物理内存区域,这种共享优点是进程间访问速度更快,但是共享的内存大小有限 2、mmap共享内存是多个进程的虚拟地址空间共享磁盘的一段内存,有点是共享的内存可以很大, 阅读全文
摘要:
Linux文件系统(下)https://www.cnblogs.com/-citywall123/p/12401347.html 一、一切皆是文件 在UNIX系统中有一个重要的概念:一切都是文件。也就是说,在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件 阅读全文