浙教版 (2019)选修1 数据与数据结构5.3 数据排序背景图课件ppt
展开选择排序算法是对参加排序的数组中所有元素中找出最小(或最大)的数据,使它与第一个(或最后一个)元素中的数据进行相互交换位置。然后在余下的元素中找出最小(或最大)的数据,与第二个(或最后第二个)元素中的数据交换位置。以此类推,直到所有元素称为一个有序的序列。
选择排序(从上到下,升序)
第一轮完成后,数据是:
逐个进行比较,找到最值
找到就交换,否则不交换
a=[30,22,19,13,35,8]n=len(a)#习惯性写(0,n-1),如果写(1,n)的话后面变量也要改变fr i in range(n-1): k=i #k初始赋值第一个数,即i=0 fr j in range(i+1,n): #i+1是因为从第二个数开始比较 if a[j]改一改:从下到上,降序
a=[30,22,19,13,35,8]n=len(a)fr i in range(n-1): k=i fr j in range(n-1,i,-1): if a[j]>a[k]: k=j if k!=i: a[k],a[i]=a[i],a[k]print(a)
在数组的所有元素中同时找出最小的元素和最大的元素,然后将这两个元素分别与第一个和最后一个元素交换,在余下的元素中再找出最小和最大数据的元素,分别与第二个和倒数第二个元素交换,依次类推,直到所有元素的数据按升序排列,这就是选择排序的优化。
变量l和r表示本次排序的范围,即left和right
a=[30,22,19,13,35,8]n=len(a)L=0R=n-1
while L<=R: min=L max=R fr i in range(L,R+1): if a[i]a[max]: max=i a[min],a[L]=a[L],a[min] if max==L: max=min a[max],a[R]=a[R],a[max] L=L+1 R=R-1print(a)
fr语句找出本次排序的最小元素a[min]和最大元素a[max]
然后将a[min]与a[L]交换,升序即将最小值放在最左端
将a[max]与a[R]交换,最大值放在最右端
如果最大值恰好在最小值的位置,那就要把这个“最大值”(位置是最小值)赋给最小值
两端的最值确认好后,继续向里排
a=[52,36,68,79,27] n=len(a) b=0 c=0 fr i in range(n-1): k=i fr j in range(i+1,n): if a[j]该程序段执行后,b和c的值分别为( ) A.5 3 B.4 4 C.4 3 D.3 4
a=[18,12,11,21,13] n=len(a) f=[False]*5 #含有5个元素,且初始值为False的列表 fr i in range(n): k=i fr j in range(n-1,i,-1): if a[j]1、n个数据,比较n-1轮即可有序2、n个数据,执行n*(n-1)/2次比较,最多交换n-1次,最少0次3、选择排序的时间复杂度是O(n2)4、会描述选择排序每一遍加工结果5、读懂不同优化方案的思想,各变量所代表的含义。
信息技术选修1 数据与数据结构5.3 数据排序课文配套ppt课件: 这是一份信息技术选修1 数据与数据结构5.3 数据排序课文配套ppt课件,共1页。
浙教版 (2019)第五章 数据结构与算法5.3 数据排序课文配套ppt课件: 这是一份浙教版 (2019)第五章 数据结构与算法5.3 数据排序课文配套ppt课件,共13页。PPT课件主要包含了什么是排序等内容,欢迎下载使用。
数据排序PPT课件免费下载: 浙教版(2019)高中信息技术选修1数据与数据结构课文《数据排序》,完整版PPT课件免费下载,优秀PPT背景图搭配,精美的免费ppt模板。轻松备课,欢迎免费下载使用。