08 2020 档案

摘要:进行一次快排即可 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 阅读全文
posted @ 2020-08-29 21:06 知道了呀~ 阅读(315) 评论(0) 推荐(0) 编辑
摘要:#include<iostream> #include<string> #include<string.h> #include<stack> #include<queue> #include<map> #include<set> #include<vector> #define ll long lo 阅读全文
posted @ 2020-08-29 19:09 知道了呀~ 阅读(758) 评论(0) 推荐(0) 编辑
摘要:转载自 https://www.cnblogs.com/zhangbaochong/p/5879263.html c++11中有互斥和条件变量但是并没有信号量,但是利用互斥和条件变量很容易就能实现信号量。 1.信号量 信号量是一个整数 count,提供两个原子(atom,不可分割)操作:P 操作和 阅读全文
posted @ 2020-08-19 21:59 知道了呀~ 阅读(2452) 评论(0) 推荐(1) 编辑
摘要:一、什么是inode节点 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。扇区是磁盘上存储的最小单位 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。 这种由多 阅读全文
posted @ 2020-08-18 22:03 知道了呀~ 阅读(862) 评论(0) 推荐(0) 编辑
摘要:一、进程共享内存与mmap的关系 进程之间共享内存有两种方式,分别是shm和mmap 1、shm共享内存是多个进程的虚拟地址直接共享同一块物理内存区域,这种共享优点是进程间访问速度更快,但是共享的内存大小有限 2、mmap共享内存是多个进程的虚拟地址空间共享磁盘的一段内存,有点是共享的内存可以很大, 阅读全文
posted @ 2020-08-18 21:18 知道了呀~ 阅读(1452) 评论(0) 推荐(0) 编辑
摘要:Linux文件系统(下)https://www.cnblogs.com/-citywall123/p/12401347.html 一、一切皆是文件 在UNIX系统中有一个重要的概念:一切都是文件。也就是说,在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件 阅读全文
posted @ 2020-08-18 17:35 知道了呀~ 阅读(315) 评论(0) 推荐(0) 编辑
摘要:class Solution { public: string addStrings(string num1, string num2) { string s = ""; int i = num1.length()-1; int j = num2.length()-1; int ans = 0; w 阅读全文
posted @ 2020-08-18 16:04 知道了呀~ 阅读(693) 评论(0) 推荐(0) 编辑
摘要:转载自https://blog.csdn.net/wlx990074575/article/details/108005854 c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可以在任意类型之间转换,比如 1、你可以把一个指向const对象的指针转换成指向非const对象的指针 阅读全文
posted @ 2020-08-16 20:33 知道了呀~ 阅读(3772) 评论(0) 推荐(0) 编辑
摘要:一、常规哈希算法 常规的哈希算法在进行扩容的时候,都要进行在哈希计算,重新哈希计算之后的结果通常会和原来的位置不一样,这在做负载均衡和缓存集群的时候,这种改变不是我们想要的(局限性) 因为服务器为了方便用户的访问,会在服务器上缓存数据,加速下一次的访问,因此用户每次访问的时候最好能保持同一台服务器。 阅读全文
posted @ 2020-08-16 15:24 知道了呀~ 阅读(314) 评论(0) 推荐(0) 编辑
摘要:什么是迭代器 迭代器提供了一种方法,使它能够按照顺序访问某个容器所含的各个元素,但无需暴露该容器的内部结构,换句话说迭代器就是指针的简单包装,通过一个模板类封装的对象 迭代器的失效问题 一、迭代器在vector、deque等内存连续的容器删除中失效 对于序列式容器,比如vector,删除当前的ite 阅读全文
posted @ 2020-08-13 11:12 知道了呀~ 阅读(3899) 评论(0) 推荐(4) 编辑
摘要:什么是异步 异步是当一个调用请求发送给被调用者,而调用者不用等待其结果的返回.实现异步可以采用多线程技术或则交给另外的进程来处理 异步的优缺点 1、在设计良好的情况下,可以不是使用或减少共享变量的使用,减少了死锁的可能 2、编写异步操作的复杂度高,使用回调函数处理难以调试 异步与多线程 异步与多线程 阅读全文
posted @ 2020-08-12 20:14 知道了呀~ 阅读(1002) 评论(0) 推荐(0) 编辑
摘要:多重背包: 有N种物品和一个容量为V的背包。第i种物品最多有numi件可用。 每件物品的重量是wi,价值是vi。 求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。 #include<iostream> #include<cstdio> #include<algorithm 阅读全文
posted @ 2020-08-10 21:46 知道了呀~ 阅读(395) 评论(0) 推荐(0) 编辑
摘要:#include <iostream> #include<cstring> using namespace std; const int nmax=1000; int v[nmax];//v[i]表示第i个物品的价值value int w[nmax];//w[i]表示第i个物品的重量weight i 阅读全文
posted @ 2020-08-10 21:37 知道了呀~ 阅读(347) 评论(0) 推荐(0) 编辑
摘要:#include <iostream> #include <cstring> #include <string> #include <algorithm> using namespace std; //最长回文,Manacher算法 char s[211000], c[111000];//注意S数组 阅读全文
posted @ 2020-08-09 09:49 知道了呀~ 阅读(2248) 评论(0) 推荐(0) 编辑
摘要:一、什么是布隆过滤器 布隆过滤器是一种数据结构,主要是通过位图+多个哈希函数来实现对一个 数据 的标记 作用是在大量数据中,判断给定的一个 数据 是否存在 二、哈希表与布隆过滤器 哈希表也可以对一个数据进行标记,然后可以起到判断是否存在的作用,并且标记和判断的时间复杂度都为O(1),布隆过滤器有啥优 阅读全文
posted @ 2020-08-08 22:18 知道了呀~ 阅读(631) 评论(0) 推荐(0) 编辑
摘要:1、位图(Bitmap)简介 位图是一种非常常见的结构,它使用每个二进制位来存放一个值的状态,正因为这个性质,它经常被用在数据压缩或者是索引等方面。 有这样一道题:给40亿个不重复的无符号整数,没有经过排序,然后再给一个树,如何快速判断这个数是否在40亿个数之中?在这里如果我们实打实的存放40亿个数 阅读全文
posted @ 2020-08-08 21:23 知道了呀~ 阅读(2288) 评论(0) 推荐(0) 编辑
摘要:给你一个8*8的棋盘,从一个起点开始,按日字形走(如果行移动两格,列移动1格,如果列移动两格,行移动1格),走满整个棋盘,每个点只能走一遍,输出一个可行路径 一、dfs输出所有路径 一开始以为如果能走满整个棋盘,那么从任意起点开始搜索都能搜出答案,结果是错的,只能从一个特定的入口开始才能走完整个期盘 阅读全文
posted @ 2020-08-07 19:51 知道了呀~ 阅读(532) 评论(0) 推荐(0) 编辑
摘要:一、双端队列的结构 deque的结构是由两个数组组成的,暂且把这两个数组称作是1号数组和2号数组(Array_1、Array_2) 1号数组保存的是指向2号数组的指针,1号数组的初始大小为2,在2号数组满的时候进行2倍扩容,初始化1号数组中间位置的指针指向2号数组Array_1[size/2]=Ar 阅读全文
posted @ 2020-08-06 10:51 知道了呀~ 阅读(1711) 评论(0) 推荐(0) 编辑
摘要:平衡二叉树每一个节点的平衡因子都小于等于1,所以我们判断每一个节点左右子树的深度查是不是小于等于1即可 我们可以从上往下开始判断每一个节点的平衡因子(两个递归,一个求深度,另一个递归树) 也可以从叶子节点往上递归,把每个节点的深度保存再节点中,判断平衡 因子(下面代码就是使用这种方法) #inclu 阅读全文
posted @ 2020-08-04 21:30 知道了呀~ 阅读(614) 评论(0) 推荐(0) 编辑
摘要:一条链表如何判断是否有环?若是有环那怎么找到链表环的入口? 解决思路 先判断是否有环 思路: 用快慢两个指针分别从链表头开始,慢指针一次走一个节点,快指针一次走两个节点next -> next,这样如果有环那快指针务必会跑到慢指针后面,随即两者之间的距离一次会缩小一步,最终相遇。若是未相遇且快指针的 阅读全文
posted @ 2020-08-04 20:36 知道了呀~ 阅读(711) 评论(0) 推荐(0) 编辑
摘要:回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。 一、普通函数和回调函数 普通的函 阅读全文
posted @ 2020-08-03 14:37 知道了呀~ 阅读(1644) 评论(0) 推荐(0) 编辑
摘要:一、memcpy和memove void* memove(void*destin , void* source, size_t count) { //进行这样的判断是为了解决拷贝重叠的情况 if (destin > source) { //这里拷贝的时候还可以提高效率 //因为CPU单次可以拷贝的最 阅读全文
posted @ 2020-08-02 20:47 知道了呀~ 阅读(660) 评论(0) 推荐(0) 编辑
摘要:建立一个深度为n的完全二叉树,并翻转值为m的子树,输出最后层序输出二叉树的所有节点 节点的值从1开始递增 输入: 4 3 输出 1 2 3 4 5 7 6 8 9 10 11 14 15 12 13 #include<iostream> #include<queue> #include<math.h 阅读全文
posted @ 2020-08-02 16:29 知道了呀~ 阅读(476) 评论(0) 推荐(0) 编辑
摘要:亲7数 大致问题是:给定一些个位数如[1,1,2,0]这种,计算完全使用这些数字构成的数能整除7的个数 输入 1 1 2 输出 2 一开始想用next_permutation()直接秒的,后来测试不对,对于重复的元素排列组合,只会算是同一种情况 比如1 1 2的全排列应该是有 1 1 2 1 1 2 阅读全文
posted @ 2020-08-01 20:58 知道了呀~ 阅读(409) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示