了解字典树

什么是字典树Trie树,又称单词查找树或键树,是一种树形结构,是一种哈希树的变种。Trie的核心思想是空间换时间。利用字符串的公共前缀来降低查询时间的开销以达到提高效率的目的。字典树的应用典型应用是用于统计和排序大量的字符串(但不仅限于字符串), 所以经常被搜索引擎系统用于文本词频统计。字典树的特点根节点不包含字符,除根节点外的每一个子节点都包含一个字符;从根节点到某一节点。路径上经过的字符连接起来,就是该节点对应的字符串;每个节点的所有子节点包含的字符都不相同字典树的实现
分类: 其他 发布时间: 06-29 21:17 阅读次数: 0

浅浅谈Innodb事务

redo log(重写日志)redo log的特点redo log是用来实现原子性和持久性。redo log由重做日志缓冲区(内存中)和重做日志文件文件(磁盘中)两部分组成。redo log是物理日志,记录的是页的物理修改操作。流程在InnoDB存储引擎中,通过Force Log at Commit机制实现事务的持久化;当事务提交时,必须先将该事务的redo log写入到重做日志文件中进行持久化,待事务的commit操作完成才算完成。Innodb_flush_log_at_trx_c
分类: 数据库 发布时间: 06-29 21:17 阅读次数: 0

阿里内部P8大神架构师都在用的神仙级Spring Cloud文档

Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。值得一提的
分类: 数据库 发布时间: 06-29 21:17 阅读次数: 0

杂谈随感-4:架构师应具备的技能以及架构师的价值等级

摘要:本文主要探讨架构师的能力要求是什么?架构师价值体现在哪里?架构师的价值体现有几个层次?
分类: 数据库 发布时间: 06-29 21:17 阅读次数: 0

springboot JPA+mybatis双数据源

pom文件依赖: <spring.boot.version>2.0.6.RELEASE</spring.boot.version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.spring
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

webpack性能优化-HMR

HMR: hot module replacement 热模块替换 / 模块热替换 作用: 一个模块发生变化, 只会重新打包这一个模块(而不是打包所有模块)极大提升构建速度 (开发环境)   html文件: 默认不能使用HMR功能, 同时会导致问题:html文件不能热更新了~(不用做HMR功能) 解决: 修改entry入口, 将html文件引入 css样式文件: 可以使用HMR功能: 因为style-loader内部实现了 使用方法: hot:true js文件: 不能使用HMR功能 --->
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

python 数据结构 实现队列的几种方法

1.list实现 enqueue append() dequeue pop(0) 或 enqueue insert(0,item) dequeue pop() MAX_SIZE = 100 class MyQueue1(object): """模拟队列""" def __init__(self): self.items = [] self.size = 0 def is_empty(self): """判断是否为空""
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

什么是多线程环境下的伪共享(false sharing)?

伪共享是多线程系统(每个处理器有自己的局部缓存)中一个众所周知的性能问 题。伪共享发生在不同处理器的上的线程对变量的修改依赖于相同的缓存行,如 下图所示: 伪共享问题很难被发现,因为线程可能访问完全不同的全局变量,内存中却碰巧 在很相近的位置上。如其他诸多的并发问题,避免伪共享的最基本方式是仔细审 查代码,根据缓存行来调整你的数据结构。
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

洛谷:P1160 队列安排

#include<iostream> #include<algorithm> using namespace std; int nownum=0,total=0; class node{//使用链表 public: int num; int flag; node * next,*last;//需要保存下一个与上一个,来找到左与右的位置 node(){flag=1;num=++nownum;next=last=NULL;}//初始化 void show(
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

图——基本操作

图——基本操作 判断图G是否存在边<x,y>或(x,y) 邻接矩阵的话就找两个结点对应的数值是否为1 邻接表就顺着边结点遍历看看有没有 列出图G中与结点x相邻的边 邻接矩阵就遍历某一行或某一列的所有值,如果是1就罗列出来 邻接表就遍历边结点链表 图G当中插入顶点x 从图G中删除顶点x 邻接矩阵,把要删掉的那个置为0,并且在data里把他弄成null 邻接表,删除该节点,再把指向他的变结点都删掉。 增加一条边(如果不存在,添加) 邻接矩阵,改数字就可以了 邻接表,新的边信息插入边链表 找到指定顶
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

Unity 获取键值

float size =Input.GetAxis("Mouse ScrollWheel"); 获取鼠标滚轴值 float h = Input.GetAxis("Horizontal"); //得到键盘左右控制 float v = Input.GetAxis("Vertical"); //得到键盘上下控制
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

马哥博客月考

1、wc 统计文件行数的选项是( C) A、-L B、-w C、-l D、-c 2、linux 用户创建命令(A ) A、useradd B、chown C、chmod D、groupadd 3、有一些文件某普通用户无法读取,说明其权限位缺少哪个权限(D ) A、w B、s C、x D、r 4、bash脚本首行通常为(D ) A、无实意 B、#!/bin/ksh C、#!/usr/bin/python D、#!/bin/bash 5、修改文件的属性为:属主有读写权限,属组有读权限,其他用户无权
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

jQuety事件

1.jQuery事件是对JavaScript事件的封装 2.基础事件分为鼠标事件、键盘事件、window事件、表单事件 复合事件:鼠标光标悬停、鼠标连续点击 1鼠标事件: 当 用户在文档上移动或单击鼠标时而产生的事件 常用的鼠标事件: click() 触发或将函数绑定到指定元素的click事件 点击鼠标时 mouseover() 触发或将函数绑定到指定元素的mouseover事件 鼠标指针移过时 mouseout() 触发或将函数绑定到指定元素的mouseout事件 鼠标指针移出时 mouse
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

函数节流防抖

// 节流函数 function throttle(fn, delay){ var t = null, begin = new Date().getTime(); return function(){ var _self = this, args = arguments, cur = new Date().getTime(); clearTimeout(t); if(cur - begin >= delay){ fn.apply(_self, a
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

一个可拖拽的多点线段(usercontrol)

、 <UserControl x:Class="GmapUserControls.DragLine" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformat
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

【python-文件的操作】

# ### 文件操作 """ fp = open("文件名","模式","字符编码集") fp 文件的io对象 (文件句柄) i : input 输入 o : output 输出 """ # 1.文件的写入操作 # (1) 打开文件 (把冰箱门打开) '''r"E:\python30\ceshi1.txt" 可以指定路径''' fp = open("ceshi1.txt",mode="w",encoding="utf-8") # (2) 写入内容 (把大象塞进去) fp.write("把大象塞
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

js数组方法大全(转载)

js中数组的方法种类众多,有ES5之前版本中存在的,ES5新增,ES6新增等;并且数组的方法还有原型方法和从object继承的方法,这里我们只介绍数组在每个版本中原型上的方法。 一、在使用数组的方法之前,需要先创建数组,创建数组有以下方式: 字面量方式(json方式) var arr1 = []; //创建一个空数组 var arr2 = [5]; //创建一个具有单个元素的数组 var arr3 = [5,6,7]; //创建一个具有多个元素的数组 构造函数方式 var arr1 = new
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

洛谷:P1601 A+B Problem(高精)

#include<iostream> #include<cmath> using namespace std; char num1[550],num2[550],ans[550];//保存输入的数以及输出的数 int f(int ind1,int ind2,int ansind,int in){ char temp1=num1[ind1],temp2=num2[ind2];//读取当前位 if(ind1<0 && ind2<0){//当前位都为0,退出 if(i
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

南琢滢成【Beta 】Scrum meeting4

目录 前言 任务分配 Bug大汇总 贡献时间 燃尽图 站立会议照片 困难 前言 第4次会议由PM王志成召开 时间:6月29日14:30-15:40 地点:西苑餐厅 内容:1.制定计划,分配任务;    2.汇总BUG;    3.完善项目资料;    4.分享心得体会。 任务分配 姓名 今天任务 王志成 项目总结、完善项目资料 滕江南 项目总结、完善项目资料 孔维滢 项目总结、完善项目资料 常惠琢 项目总结、完善项目资料 Bug大汇总 1.Beta冲刺阶段共计运行了多少个测试用例,合计发现了多
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0

字节流,字符流通过网络输入输出--简单例子

@Controller public class IOController { @GetMapping("/getString") public void getString(HttpServletRequest request, HttpServletResponse response) throws IOException { //获取输入流中的数据 ServletInputStream in = request.getInputStream(); int len = 0;
分类: 其他 发布时间: 06-29 21:14 阅读次数: 0