首遇“算法”

我的算法之旅是从排序开始的。

我还没有进行实践,先从思想上认识他吧。

1.桶排序:我这里直接把计数排序放在一起了,毕竟计数算法就是桶里只能放一个元素。

我们建立多个数组,然后进行分类,如“1~3,4~6”这样。

把不同的数进行分组,然后对每一个桶进行排序。再把桶按大小顺序输出。

2.冒泡排序:从第一个元素开始与后一个元素比较大小把大的放在后一个元素中,在与下一个元素进行比较,从而把大的元素不断向后推,就像大的泡泡不断升起的样子。

3.插入排序:选出一个元素,将其与前一元素进行对比,若小于则将前一元素移动到这一元素的位置,让这一元素再与下一个元素对比,不断重复,直到大于下一元素,则将本元素插入当前元素。

------------这里用到3个变量的转换,从而不会丢失变量。

4.选择排序:用第一个元素作为基础,对下一元素进行比较,记下被比较的两个元素中小的那个,不断向后比较,最后的结果要小于基础元素,那就把结果元素与基础元素进行换位。从而把最小的放在了第一个元素,以此类推。

5.快速排序:用两个哨兵形容这种算法,先确立基本元素,一般以第一个元素为基本元素。再左右两端分别放置哨兵1,2。哨兵1从左边走,走到大于基本元素的那一元素那里停下,哨兵2从右边走,走到小于基本元素的那里停下。交换他们发现的元素,不断重复,直到他们碰在了一起,将这一元素与基本元素换位。当以左边为基本数时要让右边的哨兵先走,从而让们相遇在小于基本元素的那一元素中,从而确立中间元素,在中间元素两边重复上述过程,直到哨兵一开始就站在一起。(sort函数真好用啊!)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值