分类【编程之路】下的文章

求几个整数的最大公约数大致有三种方法,求多个整数的最大公约数可以拆分为求两个整数的最大公约数,所以核心问题还是求两个整数的最大公约数。 穷举法 很直观就能想到穷举法,先找出两个数字中比较小的那一个min,然后逐个验证从2 ~ min的数字是否能被两个数整除,如果能同时被两个数字整除那就是公约数,找出其中最大的那个公约数就是所求的结果。 ```c++ i...

参考内容: 《高性能 MySQL(第三版))》 选择优化的数据类型 世面上常见的数据库大多支持了多种多样的数据类型,选择正确的数据类型对于获得高性能至关重要,一般都需要遵循如下的几个原则: 1、更小的通常更好:更小的通常更快,因为占用着更少的磁盘、内存和 CPU,并且处理时需要的 CPU 周期也更少; 2、简单就好:简单数据类型的操作通常需要更少的...

参考内容: 《高性能 MySQL(第三版))》 码农翻身知识星球 数据库村的旺财和小强 存储引擎 Writing a Custom Storage Engine / Overview 中说存储引擎负责管理 MySQL 的数据存储和索引,MySQL 服务器通过已经定义好的 API 与存储引擎进行通信。 不同的存储引擎都有各自的优势和劣势,存储引擎相...

最近主要时间都放在知识图谱构建中,但是还是需要给自己充电。想在近段时间好好把JVM的垃圾回收好好看一下,学习然后输出,是我新找到的有效学习方法,希望你看了之后能有收获。 什么是垃圾 垃圾回收(常称做GC——Garbage Collection)诞生于1960年 MIT 的 Lisp 语言,垃圾回收机制也已经用在了很多编程语言中,比如java、pytho...

本文参考内容: 如何做博客/企业站以及注意事项 Typecho支持Emoji表情方法 说明:此篇文章得益于王红星的指导,喜欢直接粗暴一点的朋友可以跳过前面,直接从程序的选择开始阅读。 我的博客搭建之路 说起来有点惭愧,我自己是计算机科学与技术专业出身,虽然博客系统在我眼里是很简单的系统,但是我却一直畏惧从零开始搭建一个系统的麻烦性,因为但是安装程序...

在此前我使用的前端框架是 Angular,使用过 TypeScript 后你就会讨厌 JS 了,我学习 Vue 时的最新版本是 2.5,相信大部分同学都不会认为 Vue 那样又细又长的代码很美观吧,简单看了一些网络博客后,我毅然决然引入了 TypeScript 进行开发,本文仅整理记录我自己遇到的一些坑。 使用 Cli 脚手架是一个比较方便的工具,这里...

MongoDB 聚合官方文档 聚合管道是一个基于数据处理管道概念建模的数据聚合框架,文档进入一个多阶段的处理管道,该管道最终将其转换为聚合后的结果。 下面的例子来源于官方文档。第一阶段,$match按status字段来过滤文档,并把status字段值为A的文档传递到下一阶段;第二阶段,$group将文档按cust_id进行分组,并针对每一组数据对amo...

参考内容: 《编译原理》 实现简单的正则表达式引擎 正则表达式回溯原理 浅谈正则表达式原理 最近在一个业务问题中遇到了一个正则表达式性能问题,于是查了点资料去回顾了下正则表达式的原理,简单整理了一下就发到这里吧;另外也是想试试 Apple Pencil 的手感如何,画的太丑不要嫌弃哈。 有穷自动机 正则表达式的规则不是很多,这些规则也很容易就能理解...

参考内容 Learning Vim The Pragmatic Way 《鸟哥的 Linux 私房菜》 Vim 可以认为是 Vi 的高级版本,Vim 可以用颜色或下划线的方式来显示一些特殊信息,您可以认为 Vi 是一个文本处理工具,而 Vim 是一个程序开发工具,现在大部分 Linux 的发行版都以 Vim 替换 Vi 了。在 Linux 命令行模...
.