- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 排序方法 7.5.1遴选法排序:99页 排序指的是将一系列数(包括字符的ASCⅡ代码),按由小到大或由大到小的次序进行排列。可以设想把这些数分别写在一些小纸片上,把这些纸片放在左侧,比如9 、3、12、5这一组数。这相当于把这一组数放入数组A。挑选出其最小者,移到右侧的第一个位置上 7.5.2、遴选互换法排序 遴选法需要两个数组,在第一次比较后,如果不把最小者放入B(1)中,而是令它与A(1)互换位置。这样,数组B不再需要。在第二次比较时,因A(1)已是最小者,故比较只需在A(2)与A(N)间进行。比较后再将其最小者与A(2)互换位置……。 这种比较只需进行N-1次,第N 次余下的A(N)必是最大者。这就是遴选互换法排序。 7.5.3、互换法排序 遴选互换法首先设置变量M,在其中首先放A(I),然后依次用它与A(I+1)~A(N)比较。全部比较完毕后,M内存放的是最小者,于是再与A(I)对换。现改为每次直接取A(I)与A(I+1)~A(N)比较,若小于A(I),则立即互换。这种方法就是互换法排序。 * 上机:从第四周开始, 周五1-2节, 地点:1 机房。 9 3 12 5 A(1) A(2) A(3) A(4) A B 3 B(1) B(2) B(3) B(4) 9 3 12 5 A(1) A(2) A(3) A(4) A B 3 5 9 12 B(1) B(2) B(3) B(4) 这相当于放入另一数组B中下标为1的元素B(1) 。(本章中不使用数组中下标值为0的元素)。然后在左侧余下的纸片中,再挑选最小者,并移至右侧第二个位置,即放入B(2)中。如此重复,直到左侧的纸片全部移至右侧,并在数组B中排好。 我们知道,把纸片从左侧移到右侧,左侧就没有了,但把一个变量的值赋给另一个变量后,原变量仍存在,其值不变。因此,按上述步骤,经比较在数组A中找到数值最小的元素后,为避免下次比较时该元素又被认定为最小元素,应将它赋值为一个大数W,这个大数要大于这一组数中的最大者。9,3,12,5这些数,W可取100……这就是遴选法排序。 9 3 12 5 A(1) A(2) A(3) A(4) 100 B 3 5 9 12 B(1) B(2) B(3) B(4) 10 READ N, W 20 DIM A(N), B(N) 30 FOR I = 1 TO N: READ A(I): NEXT I READ N, W DIM A(N), B(N) I = 1,N READ A(I) I 10~20 M = A(1): K = 1 I = 1,N M = A(J) K = J J J = 2,N A(J) ≥M I T F A(K) = W B(I) = M 40 FOR I = 1 TO N 50 M = A(1): K = 1 60 FOR J = 2 TO N 70 IF A(J) = M THEN 90 80 M = A(J): K = J 90 NEXT J 100 A(K) = W: B(I) = M 110 FOR J = 1 TO N: PRINT A(J); B(J); : NEXT J 120 NEXT I 130 FOR I = 1 TO N: PRINT B(I);: NEXT I (130 FOR I = N TO 1 STEP -1: PRINT B(I): NEXT I) 140 END 150 DATA n,w,(a1,a2,......an 150 DATA 4,100,9,3,12,5 9 3 100 0 12 0 5 0 … 3 5 9 12 1.0 读入N,W,N:数的个数。 W:一个大数,比如9,3,12,5这一数组。N=4,W=100 2.0 定义两个数组A(N)和B(N)。 3.0 把N个数放入数组A(N)中。 A(1)=9,(2)=3,12,(5)A(4),B(4) 4.0 I=1,N控制一个大循环。→循环N次。 I=1,4 ①赋值M=A(1),K=1。 M=A(1)=4,K=1。 ②J=2,N控制一个小循环。 J=2。 ㈠判断A(J)≥M,若是,下一个小循环;若不是,(肯定A(J)小于M),M=A(J),K=J(K=2),下一个小循环。A(2)≥M。 第一个小循环结束,找到最小者,放入B(1),最小者实际上就是A(K),把A(K)=W大数,B(I)=M,I=1时,B(1)=3。 110句:打印数组A和B(共打印N次)。 5.??????? 下一个大循环。I=2。大循环结束后,全部
有哪些信誉好的足球投注网站
文档评论(0)