原文: 十大经典排序算法(动图演示) 归并排序 归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2- ...
分类:
编程语言 时间:
2019-07-03 15:27:36
阅读次数:
114
Lamda 表达式 使用内部类也可以实现相关的功能, 但使用lamda更简短 lamda 的参数类型可以省略 如果是单条语句, lamda 的花括号可以省略 如果是单条语句, lamda 的 return 可以省略 如果是单个参数, 圆括号也可以省略 方法引用 方法引用是指可以使用 符号来通过名称引 ...
分类:
编程语言 时间:
2019-07-03 13:47:37
阅读次数:
127
1、点击tools后再点击Merge TIFF,将所需要的图片集转换成tif格式,源图片集格式支持jpg和tif两种。合成的图片集命名格式为[chi_sim].[test].[exp0].tif 第一个空是字典格式,第二个字体(自定义)名字,第三个空位exp[0]。 2、生成BOX文件,D:\jTe ...
分类:
其他好文 时间:
2019-07-02 10:57:04
阅读次数:
936
合并,就是两个树的结构交集部分,数据相加,否则,取非空部分。 所以,这里相当于是对两棵树同时遍历: 如果两棵树节点都不为空,则数据相加, 否则,直接指针把不为空的节点复制过来。 注:这里没有申请内存,而直接对原有的树进行改造,这样可以节省申请内存的时间,且节省一些内存。 ...
分类:
其他好文 时间:
2019-07-01 09:15:21
阅读次数:
96
创建分支 查看分支 git branch 创建分支 git branch 切换分支 git checkout 创建并切换分支 git checkout b 合并分支(需要先切换到主分支) git merge 删除分支 git branch d ...
分类:
其他好文 时间:
2019-06-29 16:26:11
阅读次数:
96
一、原理 归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。将已有序的子序列合并,得到完全有序的序列。如下图: 归并过程: 两个指针的元素比较大小,小的元素就会被放入临时列表中,最后的结果就是: 算法步骤: (1)申请临时空间,使其大小为两个已经排序序列之和,该空间用来存放合并 ...
分类:
编程语言 时间:
2019-06-29 12:58:53
阅读次数:
109
分布式版本控制系统,跟踪文本文件的改动 ubuntu安装: sudo apt install git 安装完成后,设置使用的用户名和邮箱: 全局: git config --global user.name "<your name>" git config --global user.email " ...
分类:
其他好文 时间:
2019-06-28 16:31:12
阅读次数:
96
操作数据库的时候,有时候会遇到insertOrUpdate这种需求。 如果数据库中存在数据就update,如果不存在就insert。 以前的时候,需要额外select查询一下,如果有数据就update,如果没有数据就insert。 而现在Orcale数据库都提供了 MERGE 方法来处理这种需求。 ...
分类:
数据库 时间:
2019-06-26 19:16:09
阅读次数:
143
由于公司一直使用的是的SVN,基本上都是内网,原来的git命令都快忘记了,当然也是自己太懒,平时都是直接拖到github上。今天打开idea后突然看到了原来自己写好的一个项目,就想将它上传到github上,也顺便再复习一下git命令,没想到也是遇到了很多坑,也是参考了几个大神的博客才解决,因此想记录 ...
分类:
Web程序 时间:
2019-06-25 17:20:38
阅读次数:
143
统计逆序对的两种解法 归并排序(mergeSort) 逆序对定义 $ia[j]$,假设我们分别使得通过mergeSort使得左右半边有序 即$a[1]...a[mid]$ 递增, $a[mid+1]....a[n]$递增,我们需要通过merge操作,完成整个的排序和新增逆序对的计数,较小值出现在左半 ...
分类:
其他好文 时间:
2019-06-24 19:43:16
阅读次数:
119