程序设计专题.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序设计专题;学习目标;一、算法效率的度量;一、算法效率;一、算法效率;一、算法效率;一、算法效率;一、算法效率;一、算法效率;一、算法效率;二、查找算法;二、查找算法; 需定义一个函数int FindIntegerInArray(int key, int array[],int n)用于在一个有效长度为n的整数数组中查找整数Key。 ; 需定义一个函数int FindIntegerInArray(int key, int array[],int n)用于在一个有效长度为n的整数数组中查找整数Key。 若美国的标准硬币有五种,则可用两个数组分别表示币值和币名。 ; /* Example: linear search */ /* 要求编写程序来显示美国的硬币名称和它对应的值*/;二、查找算法;二、查找算法; /* Example: binary search */ /* 要求在一组整数中查找一个值 */;二、查找算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;三、排序算法;;三、排序算法;三、排序算法;void SortIntegerArray (int array[], int n) { int i, n1, n2, *arr1, *arr2; if (n 1) { n1 = n / 2; n2 = n – n1; arr1 = NewArray (n1, int); arr2 = NewArray (n2, int); for (i = 0; i n1; i++) arr1[i] = array[i]; for (i = 0; i n2; i++) arr2[i] = array[n1 + i]; SortIntegerArray (arr1, n1); SortIntegerArray (arr2, n2); Merge (array, arr1, n1, arr2, n2); FreeBlock (arr1); FreeBlock (arr2); } } ;三、排序算法;35;1、快速排序算法实现及效率分析 快速排序( Quicksort)是递归的另一个很好的例子。该算法由C. A. R. Hoare在1962年提出。 good exa mple of recursion is quicksort, a sorting algorithm developed by C.A.R. Hoare in 1962. 给定一个数组,选一个元素,将其他元素划分成两个子集,其中一个子集的所有元素都小于划分元素,另外一个子集的所有元素都大于或等于划分元素。然后对这两个子集递归地应用此过程。当一个子集少于两个元素时,它不需要任何排序,这时停止继续递归。 要求:从一个数据文件中读入N个整数(N=100000),且把结果保存到另一个文本文件中,并显示排序所用的时间。;?2 、融合选择法和归并法的排序算法实现及效率分析 选择排序法对于小数组来说比归并排序快,尽管当数组变大时,情况相反。如果你想设计一个函数SortIntegerArray,使之适应于各种大小的数组,那么可以把两种策略结合起来,对大数组用合并排序,对小数组使用选择排序。用这种方法重新实现函数SortIntegerArray,那么该如何选择区分大小数组的那个分界点呢??? 要求:从一个数据文件中读入N个整数(N=100000),且把结果保存到另一个文本文件中,并显示排序所用的时间。

文档评论(0)

118lingling + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档