1.排序算法的分类 排序算法:基本排序,多路归并排序 基本排序:交换排序,选择排序,插入排序,合并排序 交换排序:冒泡排序,快速排序 选择排序:选择排序,堆排序 插入排序:插入排序,Shell排序 2.冒泡排序算法 (1)流程: 1.对数组中的各数据,依次比较相邻的两个元素的大小; 2.如果前面的数 ...
分类:
编程语言 时间:
2018-10-17 14:56:58
阅读次数:
161
该脚本适用于需要合并的txt文件就在当前目录,而不是当前目录的下级目录,且TXT文件名称是按照数字命名#!/bin/bash#查找当前路径下所有后缀名为.txt的文件并统计数量FILE_COUNT=`find.-typef-name"*.txt"|wc-l`#判断当前路径下是否还有超过10个txt文件需要合并while[$FILE_COUNT-gt10]do#查找当前路径下所有后缀名为.txt的文
分类:
其他好文 时间:
2018-10-17 14:51:26
阅读次数:
151
排序算法 排序算法两阶段 第一阶段(比较排序) 插入排序 合并排序 堆排序 快速排序 第二阶段(非比较排序) 计数排序 基数排序 桶排序 第一阶段:比较排序 插入排序 插入排序的主要思想 : 将当前的元素放入前面合适的位置 插入排序的实现细节 : heap_sort小结: heap_sort中最重要 ...
分类:
编程语言 时间:
2018-10-06 20:40:56
阅读次数:
188
1、快速排序,上代码: 分析一哈: 当不考虑最差情况(O(n^2))时,快排时间复杂度为O(nlogn):因为层数为O(logn)即调用栈的高度是O(logn),而每层的时间是O(n)2、合并排序 采用分而治之的方法,先把数组分成一个个长度为1的数组,再将数组分别按顺序组合成一个数组 因此涉及到两个 ...
分类:
编程语言 时间:
2018-10-06 00:05:19
阅读次数:
190
有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列),输出到一个新文件C中。 #include <stdio.h>#include <stdlib.h>#include <string.h> #include <iostream>using namespace std ...
分类:
编程语言 时间:
2018-09-24 00:25:53
阅读次数:
271
归并排序也是一种常用的排序算法, 其时间复杂度为O(n*logn), 它的基础是分治的思想。 其基本思路就是把数组分成两组A,B, 如果这两组内的数据都是有序的, 那么就可以很方便的对这两组数据进行合并排序。 但是如何让这两组数据有序呢? 归并法的思想就是把A,B两组各自再分成两组, 依次类推, 当... ...
分类:
编程语言 时间:
2018-08-10 15:54:04
阅读次数:
132
字符设备(Character device) 是一个顺序的数据流设备,对这种设备的读写是按字符进行的,而且这些字符是连续地形成一个数据流。他不具备缓冲区,所以对这种设备的读写是实时的。 块设备(blockdevice) 是一种具有一定结构的随机存取设备,对这种设备的读写是按块进行的,他使用缓冲区来存 ...
分类:
其他好文 时间:
2018-08-08 13:56:00
阅读次数:
183
https://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337?tpId=13&tqId=11169&rp=1&ru=%2Fta%2Fcoding-interviews&qru=%2Fta%2Fcoding-interviews% ...
分类:
编程语言 时间:
2018-07-27 14:44:30
阅读次数:
146
输入: n 个元素的数组 A[1...n] 输出: 按非降序排列的数组 A[1...n] 步骤 1.定义t←1,输入A 2.用变量s存储被合并序列的大小,开始时将s←t,每次执行外边的 while 循环时s被乘以2然后赋值给t。 3.用while循环去进行合并序列,i+1,i+s,i+t用来定义两个 ...
分类:
编程语言 时间:
2018-06-18 20:58:21
阅读次数:
167