阿烫的后花园

烫烫烫烫烫烫

排序分为两种,一种是基于比较的排序,如插入排序、快速排序、归并排序等等,这类算法比较常见,但他们的时间复杂度都无法突破下界 O(nlgn)。

另外一种是非基于比较的算法,如计数排序、基数排序、桶排序,他们的时间复杂度可以达到 O(n),是因为算法假设了数据拥有某种分布特性,如范围,如均匀分布等等。

阅读全文 »

Mac

Go2Shell

从Finder某一个文件中快速打开 Iterm 并 cd 至此目录

(多了一个 Icon)

image.png

bat 无缝替换 cat
cat指令的增强,带高亮,带滚动

安装 brew install bat


exa 替换 ls
exa

安装 brew install exa


fzf 快速模糊搜寻器
安装 fzf 后,在命令行的任何地方按下 Ctrl + T,就可以开启交互式模糊搜索界面,递归搜索当前目录下的文件。或者 Ctrl + R,搜索历史命令。更多姿势自行搜索。

安装 brew install fzf


HTTPie —— curl的代替品
HTTPie 是一个更简单(不像 curl,每次使用都要 Google 下用法)、功能更多、更美观的 curl 替代品,可以在命令行调用 HTTP 的 API。

在使用过程中发现,其并不能完全用 alias 的方式代替 curl, 因为有很多参数,如 -i、-w 它都没有。

安装 brew install httpie

peco 交互式过滤
将任何命令的输出通过管道传给 peco,便能交互式地过滤输出,查找所需信息。你可以把它想成交互式 grep,随着输入实时更新结果,让搜索过程更直观。

安装: brew install peco


各种文件预览

1
2
brew  install qlcolorcode quicklook-json qlstephen suspicious-package provisionql quicklook-csv qlmarkdown
brew install highlight luarocks

idea 插件

不容错过的 IntelliJ IDEA 插件 Top 10

rainbow-brackets
解决了嵌套元素大量重复中括号的烦恼,为每组左中括号和右中括号提供了各自的颜色,使跟踪代码块的起始和结束位置更加容易。

image.png
image.png


GitToolBox
显示谁在何时改变了行内的代码。
image.png

​  作为一棵二叉搜索树,那么最重要的就是如何保持自己的平衡,为了保持平衡,二叉搜索树们八仙过海各显神通,如AVL树、红黑树、Treap树、伸展树等等,但万变不离其宗,他们的方法都是基于旋转,然后更改节点间的关系。

​​  尤其是一些二叉搜索树实现起来非常非常繁琐,像红黑树,增加和删除节点总共大约需要处理十来种情况,写完debug完估计天都已经黑了几次了。

​​  而替罪羊树就是一棵与众不同的树,当遇见不平衡的情况时,不会想法子调整平衡,直接对她进行暴力重建。

阅读全文 »

概念

  伸展树也是一种平衡二叉搜索树,她不要求自己时刻保持平衡,但她却有这样一条有趣的性质:在一个节点被访问之后,需要将这个节点推至根节点,这样下次能迅速地访问到该节点。其余特性和一般的二叉搜索树一致。

阅读全文 »

  作为十几年学生生涯的华丽谢幕,一场毕业旅行是必不可少的。
  一直想去广袤无垠的大草原,去骑马,去吃烤全羊,去喝马奶酒,所以计划原本是呼伦贝尔大草原。招呼了顾同学想一起,只不过来回机票太贵,而且距离他的起点南京非常远,再加上烤全羊什么的,超出了预算,于是作罢。
  后来,又想起了皖南线。这是一条美丽的骑行线路,别称小川藏线,这条线路我和我弟一年前就想去骑行,只不过因为有事而耽搁了。这次和他说了,欣然同意。于是又去和顾同学说了这个的计划,虽然哭穷,但他也很快就加入了这个计划。

阅读全文 »

最近看了下jpa与querydsl的用法,使用起来狠舒服,几乎不用写sql。

起因

  • 过去一直都使用mybatis,想要尝试一下新花样
  • 都是spring全家桶的东西,据说很爽
阅读全文 »

2022-02-13更新: 一些图片源失效,替换图片地址

3月中旬去玉渊潭看樱花,樱花还没有完全盛开,只开了一小部分。不过,山桃花全都绽放了,赶上了好时候,天气很暖和,天很蓝。

1554617307085.png

阅读全文 »

Treap = Tree + Heap

Treap树是一种较为简单的二叉查找树,同时也是一种平衡树,她是在BST(二叉搜索树)的基础上添加了一个修正值,在满足BST的性质上,Treap树节点的修正值还满足最小堆性质,最小堆也就是小根堆,根节点的值最小,左右孩子的节点的值都比父节点大。

修正值是在插入一个节点时随机生成的一个值,和插入的值无关。

一棵Treap树具有以下性质

  • 如果她的左子树不为空,那么左子树上的所有节点都小于她的根节点的值,并且左子树上的所有修正值都不小于她的根节点的修正值;
  • 如果她的右子树不为空,那么右子树上的所有节点都大于她的根节点的值,并且右子树上的所有修正值都不小于她的根节点的修正值;
  • 她的左右子树都分别是Treap树,满足以上两条性质。
阅读全文 »

人若没有梦想,那和咸鱼还有什么区别?

  • 梦想自己有一个大房子,组装一套上万的音响系统。下班后,躺在沙发上,闭着眼睛,享受雅尼的音乐。
  • 陪伴一只二哈。
  • 尽自己最大的努力去环游世界,去航拍,去记录美好的事物与景色。
  • 去北极;去看极光。
  • 讨个互相欢喜的老婆,生个糟心的儿子和可爱的女儿,平平凡凡,过完这一生。

在开发admin后台时,因需要,将项目拆解成两个模块,一是持久层,只对数据库进行查询更新等操作,另外一个模块依赖持久层,所有对数据库的操作都必须经过持久层。


一开始的思路是:**将持久层打包成jar包并且发布**,admin项目添加jar包的依赖,但无法很好的协同开发,admin需要什么接口要告诉持久层的开发人员,之后开发完成之后要重新打包发布,然后我再更新引用jar包,沟通成本太大,效率特别低。
阅读全文 »
0%