不同数据算法结构

排序
1.冒泡排序
在这里插入图片描述
思路:
先设置一个变量用true/false来进行判断循环
从第一个元素起每相邻两个元素进行比较,交换位置,若出现交换则令变量为true,直到循环遍历最后一个元素
判断本次循环的变量是否变为true,若真,令变量为假,继续循环,若假,跳出循环结束。

2.选择排序
在这里插入图片描述
思路:
假设共有N个数据,那么由于每次设置第一个为最小值,没有进行排序,而是将后面的数据进行排序,所以需要重复(N-1)次
具体来说,每次假设第一个为最小值,将后面的数据依次与它进行比较,若小于它,将这个值设为最小值,继续与后面的值进行比较,每次循环选出一个最小值,并与首个设定的最小值进行交换位置。
两个循环体,内嵌的循环体负责找出每次的最小值,外层循环体负责进行排序,共(N-1)次
3.插入排序
在这里插入图片描述
思路:
这个排序与选择排序差不多,这个类似倒序的方式
假定第一个为排序的,对后面没有排序的按照顺序每次提取一个数据
对选取数据之前已经排过序的数据进行倒序遍历,依次比较,若大于选取值,将该数据后移也就相当于和选取数据互换位置。
也是两个循环体
4.归并排序
在这里插入图片描述
在这里插入图片描述

思路:
采用分而治之的思想,类似于二叉树
先将数据进行等份拆分,然后进行合并数据,通过遍历两边拆分的对应位置的数据,将小的数据进行拷贝,直到结束,最后将两个拆分的数据合并放入原数组中,这里其实是声明一个空列表用来存放。

5.快速排序
在这里插入图片描述
快速排序详细介绍

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值