Redis安装(使用Docker)
使用Docker部署Redis1. 拉取镜像docker pull redis#默认下载最新版本
2. 创建本地目录(用于挂载)创建本地映射目录用于挂载Redis配置文件和数据文件
#递归创建目录mkdir -p /home/docker/redis/datamkdir -p /home/docker/redis/conf#递归修改文件权限为可编辑chmod -R 777 /home/docker/
3.下载配置文件下载redis.conf,上传到服务器。在官网下整个文件,找到redis.conf,上传到服务器刚刚创建的conf文件夹下。
4. 修改配置文件注释掉下面这句,使redis可以外部访问。
bind 127.0.0.1
#设置密码requirepass 密码#改为yes,持久化appendonly yes
5. 创建docker容器sudo docker run -p 6380:6379 --name redis -v /home/docker/redis/conf:/etc/redis/redis.conf -v /home/docker/redis/data:/d ...
堆排序及其实现
堆排序堆是一种叫做完全二叉树的数据结构,可以分为大根堆和小根堆。大根堆:每个节点的值都大于或者等于它的左右孩子的值小根堆:每个节点的值都小于或者等于它的左右孩子的值
完全二叉树在数组中的存储当二叉树按层序遍历的顺序保存在数组中时,**如果根节点存放在array[0],则节点i的左孩子节点为array[i*2+1],右孩子节点为array[i*2+2];如果根节点存放在array[1],则其左孩子为array[i*2],其右孩子为array[i*2+1]**。
建堆过程(大根堆为例)从最后一个父节点array[n/2]开始,往前遍历,判断父节点和两个孩子节点大小,如果有孩子比父节点还大的,交换,这个交换会导致子树不符合大根堆的特点,因此要再往下再调整子树,直到调整完所有的,就构建好了大根堆注:其中n是元素的个数。###代码堆排序实现找第k大数,采用大根堆的方法
class Solution {public: int findKthLargest(vector<int>& nums, int k) { //建堆 ...
操作系统概述
前言操作系统是控制管理整个计算机系统的软件与硬件资源,合理地组织和调度计算机的工作和资源的分配,进而为用户和应用程序提供方便接口与环境的程序集合,是一种最基本的系统软件。目前常用的计算机操作系统有windows,linux等,本文将从宏观的角度总结操作系统的工作流程,将分散的知识链接在一起,有助于理解操作系统。
如果哪里有错误,请留言提醒我。
要让一个操作系统在计算机上运行起来,首先需要一个安装操作系统的硬盘。
硬盘每块硬盘在厂家生产出来出厂之前,会经历一次物理格式化,物理格式化是将硬盘划分出柱面和磁道,再将磁道划分为一个一个扇区(也就是盘块),因此在出厂时,硬盘的每一块已经划分好,相应每一块有一个物理地址。
在使用硬盘之前先将硬盘分区,分区的目的是方便管理和使用文件,同时分区后簇变小,由于一个簇只能被一个文件占有,若文件很小会造成空间浪费,因此分区有利于减小内部碎片,提高存储利用率。分区之后要进行逻辑格式化,不同于物理格式化,逻辑格式化的目的是給磁盘的分区装入文件系统,以管理磁盘中的文件,常见的文件系统有FAT32、NTFS、exFAT、EXT4等,每个分区的文件系统 ...