下载此文档

七年级地理下册地图复习题.pdf


文档分类:中学教育 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
php 常用的四种排序算法纯当练习,高手请绕过。以一维数组为例。 1. 插入排序思想: 每次将一个待排序的数据元素插入到前面已经排好序的数列中, 使数列依然有序,知道待排序数据元素全部插入完为止。示例: [ 初始关键字] [49] 38 65 97 76 13 27 49 J=2(38) [38 49] 65 97 76 13 27 49 J=3(65) [38 49 65] 97 76 13 27 49 J=4(97) [38 49 65 97] 76 13 27 49 J=5(76) [38 49 65 76 97] 13 27 49 J=6(13) [13 38 49 65 76 97] 27 49 J=7(27) [13 27 38 49 65 76 97] 49 J=8(49) [13 27 38 49 49 65 76 97] 时间复杂度: 如果目标是把 n 个元素的序列升序排列, 那么采用插入排序存在最好情况和最坏情况。最好情况就是, 序列已经是升序排列了, 在这种情况下,需要进行的比较操作需(n-1) 次即可。最坏情况就是,序列是降序排列,那么此时需要进行的比较共有 n(n-1)/2 次。插入排序的赋值操作是比较操作的次数加上(n-1) 次。平均来说插入排序算法的时间复杂度为 O(n^2) 。因而,插入排序不适合对于数据量比较大的排序应用。但是,如果需要排序的数据量很小,例如,量级小于千, 那么插入排序还是一个不错的选择。代码: [php] view plaincopy function insert_sort($arr){ $count = count($arr); for($i=1; $i<$count; $i++){ $tmp = $arr[$i]; $j= $i- 1; while($arr[$j] > $tmp){ $arr[$j+1] = $arr[$j]; $arr[$j] = $tmp; $j--; }} return $arr; } 2. 选择排序思想: 每一趟从待排序的数据元素中选出最小( 或最大) 的一个元素, 顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。示例: [ 初始关键字] [49 38 65 97 76 13 27 49] 第一趟排序后 13[ 38 65 97 76 49 27 49] 第二趟排序后 13 27[ 65 97 76 49 38 49] 第三趟排序后 13 27 38 [97 76 49 65 49] 第四趟排序后 13 27 38 49 [49 97 65 76] 第五趟排序后 13 27 38 49 49 [97 97 76] 第六趟排序后 13 27 38 49 49 76 [76 97] 第七趟排序后 13 27 38 49 49 76 76[ 97] 最后排序结果 13 27 38 49 49 76 76 97 时间复杂度: 时间复杂度为 o(n2), 不稳定排序,适合规模比较小的代码: [php] view plaincopy // 选择排序(一维数组) function select_sort($arr){ $count = count($arr); for($i=0; $i<$count; $i++){ $k= $i; for($j=$i+1; $j<$co

七年级地理下册地图复习题 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人精选文库
  • 文件大小0 KB
  • 时间2016-03-23
最近更新