当前位置: 首页 > news >正文

给个营销型网站个人简历电子版模板免费

给个营销型网站,个人简历电子版模板免费,招商码头无忧查询系统,建设银行企业网银缴费一 简介 归并排序(Merge Sort) 的基本思想是#xff1a; 首先将待排序文件看成 n n n 个长度为1的有序子文件#xff0c; 把这些子文件两两归并#xff0c; 得到 n 2 \frac{n}{2} 2n​ 个长度为 2 的有序子文件#xff1b; 然后再把这 n 2 \frac{n}{2} 2n​ 个有序的子…一 简介 归并排序(Merge Sort) 的基本思想是 首先将待排序文件看成 n n n 个长度为1的有序子文件 把这些子文件两两归并 得到 n 2 \frac{n}{2} 2n​ 个长度为 2 的有序子文件 然后再把这 n 2 \frac{n}{2} 2n​ 个有序的子文件两两归并 如此反复直到最后得到一个长度为 n n n 的有序文件为止 这种排序方法称为二路归并排序。 在本文中我们讨论的归并排序特指二路归并排序. 看一个示意图: 二 实现过程 归并排序的核心操作是将数组中前后相邻的两个有序序列归并为一个有序序列. 以java为例看一个demo。 public class MergeSort {public static void main(String[] args) {Integer[] array new Integer[]{30,45,10,30,50};System.out.println(归并排序初始顺序\n Arrays.toString(array));mergeSort(array);System.out.println(归并排序最后顺序\nArrays.toString(array));}static void mergeSort(Integer[] arr) {sort(arr, 0, arr.length - 1);}/**** 将两个有序序列归并为一个有序序列*/static void sort(Integer[] arr, int low, int high) {if (low high) {return;}int mid low (high - low) / 2;sort(arr, low, mid);sort(arr, mid 1, high);merge(arr, low, mid, high);}static void merge(Integer[] arr, int low, int mid, int high) {//定义了一个临时数组int[] temp new int[high - low 1];int i low, j mid 1, k 0;while (i mid j high) {temp[k] arr[i] arr[j] ? arr[i] : arr[j];}while (i mid) {//将原数组从下标 low~middle 中剩余的复制到 temptemp[k] arr[i];}while (j high) {//将原数组从下标 middle1 ~ high 中剩余的复制到 temptemp[k] arr[j];}for (i 0; i k; i) {arr[low i] temp[i];}} }程序运行结果 归并排序算法 归并排序算法可看作递归算法 虽然有的书写成不是递归算法同样实现了。 三 步骤 第一步 一趟归并排序的基本思想是 在某趟归并中 设各子文件长度为len(最后一个子文件的长度可能会小于len), 则归并前 R [ 1.. n ] R[1..n] R[1..n] 共有 n l e n \frac{n}{len} lenn​ 个有序子文件。 调用归并操作对子文件进行归并时 必须对子文件的个数可能是奇数、最后一个子文件和长度可能小于 l e n len len 这两种特殊情况进行处理 若子文件个数为奇数则最后个子文件无需和其他子文件归并若子文件个数为偶数则要注意最后一对子文件中后一个子文件的区间上界为 n n n. 第二步 归并排序的过程需要进行 l o g 2 log_{2} log2​ n {n} n 趟。 每一趟排序的操作就是将两个有序子文件进行归并 而每一对有序子文件归并时 记录的比较次数均小于等于记录的移动次数 记录移动的次数均等于文件中记录的个数 即每一趟归并的时间复杂度为 O ( n ) O(n) O(n)。 因此归并排序的时间复杂度为 O ( n l o g 2 O(nlog_{2} O(nlog2​ n n n ) ) ). 从上述例子可以看出 空间复杂度为 O ( n ) O(n) O(n) 归并排序是稳定的 因为在每两个有序子文件 归并时 若分别在两个有序子文件中出现有相同关键字的记录时 归并排序算法能够使前一个子文件中同一关键字的记录被先复制后一子文件中同一关键字的记录后被复制从而确保它们的相对次序不变。 四 归并算法的优缺点 优点 适合于大规模数据量并且要求稳定。在基于比较的算法中是最高效率。 缺点 需要数据集长度的辅助空间 在一定程度上增加了空间复杂度。 如果初始数据几乎填满整个内存归并排序可能无法工作。 综上归并算法是应用于大规模数据集最好的排序算法。
http://www.zqtcl.cn/news/10318/

相关文章:

  • 做的网站缩小内容就全乱了wordpress抓取
  • 中国设计网站推荐tk域名官方网站
  • wordpress教程凌风汕头seo推广
  • 旅游网站的建设开题报告dede做视频网站
  • 机械做网站小工具文本wordpress
  • 沧州哪里有做网站的公司4000-如何获取永久免费域名
  • 东莞桂城网站建设网站手机站怎么做
  • 网站移动端生成器百度联盟广告点击一次收益
  • 网站建设力度不够论文wordpress访客发布审核
  • 河南seo网站策划terry tao.wordpress
  • 南昌天和建设有限公司网站视觉设计师工资一般多少
  • 网站开发及app开发报价单青岛房产网新楼盘
  • 通过高新区网站建设公司网站建设方法
  • 用discuz做行业网站网站后台做的超链接打不开
  • 做网站跟推广哪家公司好吉林网络优化多少钱
  • 沧州机械类网站建设学校做网站方案
  • 亿级流量网站架构怎么做app网站ui原型
  • 中山石岐网站建设厦门做网站优化的公司
  • 网站制作设计发展前景广告平台对接
  • 网站建设谈判联系我们网站模板
  • 利用网站做淘宝客必应网站管理员工具
  • 网站上如何设置行间距安徽省建设工程信息网查询
  • 高质量的合肥网站建设网站开发技术有哪些
  • 网站建设评审会总结发言云速建站与传统网站的区别
  • 响应式网站检测工具营销推广方法有哪些
  • 苏州网站制作工作室168工程信息网
  • logo设计竞标网站网站建设项目特色
  • 盐城网站app建设龙口建设网站
  • 免费网站提交入口邯郸app开发
  • 机关局域网网站建设wordpress灯箱zoom