摘要: 排序思想: 先将序列分成较多个子序列分别进行排序,再分成较少个子序列分别进行排序,直到最后为一个序列排序。 1. 每隔固定距离选取一个数的方法划分子序。其中间隔距离称为增量。每次子序都排好后,增量减半,增量减少意味着子序数减少,直到增量为1,便是全部的数序了,希尔排序完成。 2. 子序列使用插入排序 阅读全文
posted @ 2017-07-11 17:36 老虎养的小牛犊 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 排序思想: 将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 实现步骤: 选择序列中的某个元素a作为分割标准,那么将序列中小于a的元素放在a的左边,大于a的元素 阅读全文
posted @ 2017-07-11 16:56 老虎养的小牛犊 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 排序思想: 数组中相邻元素两两比较,让最大的数浮动到数组最后的位置,其次大的数浮动到数组倒数第二个位置…… 时间复杂度: 其外层循环执行 N 1次。内层循环最多的时候执行N次,最少的时候执行1次,平均执行 (N+1)/2次。 所以循环体内的比较交换约执行 (N 1)(N + 1) / 2 = (N^ 阅读全文
posted @ 2017-07-11 15:04 老虎养的小牛犊 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 排序思想: 从数组某个位置i开始向后遍历数组,选出最小的一个和第I个位置交换,以此类推,直到从第N个和第N 1个元素中选出最小的放在第N 1个位置。 时间复杂度: 比较次数为 ,所以时间复杂度为O(n^2) 阅读全文
posted @ 2017-07-11 14:57 老虎养的小牛犊 阅读(113) 评论(0) 推荐(0) 编辑
摘要: git 查看某个文件修改历史 1. 显示文件的每一行是在那个版本最后修改。 2. 显示某个文件的每个版本提交信息:提交日期,提交人员,版本号,提交备注(没有修改细节) 3. 显示某个版本的修改详情 4. 显示所有提交记录,每条记录只显示一行 5. 显示与某个文件有关的所有提交记录 6. 显示某个版本 阅读全文
posted @ 2017-07-11 12:25 老虎养的小牛犊 阅读(8765) 评论(0) 推荐(0) 编辑
摘要: 检查以下3个地方的jdk版本是否一致: 1. Project Structure里确认两个地方:Project sdk以及project language level 2. Project Structure Modules里Sources里的Language level 3. Preference 阅读全文
posted @ 2017-07-11 12:21 老虎养的小牛犊 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 排序思想 : 遍历数组,用当前元素与之前的序列进行比较,按照排序插入到相应位置上 插入排序算法的时间复杂度: 1. 最好情况:序列有序,顺序相同:O(n) 2. 最坏情况:序列有序,但顺序相反:O(n2) private static void insertSort(int[] arr) { int 阅读全文
posted @ 2017-07-11 11:29 老虎养的小牛犊 阅读(143) 评论(0) 推荐(0) 编辑