Pistachio's Blog

Later equals never.

C++常用函数

1、string substr(int pos, int len) 从第pos开始,截取长度为len的字符串 2、随机函数 1rand() % n // 表示随机返回[0 ~ n-1] 的数 LC384. 打乱数组 ...

对RESTful_API的理解

RESTful API的理解REST表示Representational State Transfer(表现状态转移),是一种设计风格,加ful转成形容词,以形容这种设计规范的API,故为RESTful API 1.资源与URI任何事物都是资源,要想事物被唯一识别,在web中设置了URI。URI既可以看成是资源的地址,也可以看成是资源的名称。在实际开发中,资源可理解为数据库中的数据。 URI......

PHP几个判断变量为空的函数

isset()、is_null()、empty()isset()判断变量一个变量是否设置,变量存在返回true,不存在则返回false 12345<?php$a = 0;var_dump(isset($a))?>//bool(true) is_null()查看变量是否为空。以下三种情况返回true: 如果一个变量没有赋值 变量赋值为NULL 变量还没定义,或者变量被销......

UNIX下的IO模型

前言做一个网络服务器,若使用多线程,每一个请求都是一个线程,但会有CPU上下文切换,代价比较高,因此考虑用单线程处理并发问题,这时候需要网络模型。 Unix的IO读写过程 等待数据准备 把数据从系统内核拷贝到用户进程中 Unix下网络的IO模型(五种)同步IO 阻塞式IO (Blocking IO) 同步阻塞 非阻塞式IO (NonBlocking IO) 同步非阻塞(就是IO复......

配置nginx

php-fpm.conf和nginx.conf(以及其下vhost中的虚拟主机配置文件)的配置要对应,否则会出现502的报错 https://www.jianshu.com/p/15fa13a1d6f4 ...

前序与中序遍历构造二叉树

通过刷题学习,现在对二叉树递归遍历有新的认识。 前序遍历:根节点,左子树,右子树 中序遍历:左子树,根节点,右子树 由此可见,前序遍历的第一个节点就是中序遍历的根节点 此处设前序遍历中,左子树的右边界为x,由于左子树结点的个数在前序和中序遍历中相同,即x -(pl+1)=(inroot-1) - il,故推出 x = inroot - il + pl,求出左子树右边界的下标。 求......

树的序列化与反序列化

序列化是将数据结构或对象转换为一系列位的过程,以便它可以存储在文件或内存缓冲区中,或通过网络连接链路传输,以便稍后在同一个或另一个计算机环境中重建。 树的序列化就是把树转化成字符串存储,反序列化就是把树从字符串转回树形 序列化的过程就是,先把根结点存入队列,(若不为空)则把其转成字符串存入字符流中(其实就是拼接字符串),再把它的左右子树加入到队列,作为根节点继续递归构造。如果结点为空,......

C++字符串转数字

通过几种方法,把数字字符串转成int输出 stoi(string s) stoi()会做范围检查,默认范围是在int的范围内的,如果超出范围的话则会runtime error! 12345678910111213#include <iostream>//#include <cstring>using namespace std;int main(){ st......

MySQL主从复制

在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力;②在从主服务器进行备份,避免备份期间影响主服务器服务;③当主服务器出现问题时,可以切换到从服务器。 主从复制是一个成熟的架构,在从服务器可以执行查询工作(即我们常说的读功能),降低主服务器压力;在从主服务器进行备份,避免备份期间影响主服务器服务;当主服务器出现问题时,可以切换到从服务器。 主从复制原理 MySQL复制过程: ......

拓扑排序

拓扑排序是用于处理一连串的事情,这些事情之间有顺序或依赖关系,在做一件事情之前必须做另一件先(如课程表) 拓扑序:如从图中v到w有一条有向路径,则v一定排在w之前。满足此条件的顶点序列就是一个拓扑序。 拓扑排序:获得一个拓扑序的过程就是拓扑排序。 AOV如果是合理的(不带环)拓扑序,则必定是有向无环图 (Directed Acyclic Graph,DAG) 图的出度和入度体现了顶点的先后......