归并排序和插入排序理解记录

本文详细介绍了两种常见的排序算法——插入排序和归并排序的工作原理及步骤。插入排序通过将每个元素插入到已排序序列的正确位置来实现排序。而归并排序采用分治策略,将数组递归地分为更小的部分,再将这些部分合并成有序数组。
摘要由CSDN通过智能技术生成

排序

排序:顾名思义就是对一系列数值型数据进行有序化,常见的有消费金额,成绩排名,学号排名等。

升序和降序

升序:数值由低到高进行排列。比如1, 2, 5, 9 等
降序:数值由高到低进行排列。比如9, 5, 2, 1等

插入排序

对数据进行插入排序。比如有数据[1, 3, 4, 6, 1, 6, 9]需进行插入排序。
基本思想:设置第一个元素为R0岗哨,如该值为1. 依次从原数组取出数据进行插入排序
如原数组Array=[3, 4, 6, 1, 6, 9],新数组NewArray=[1]; 并且设置k=i
判断 Array[i] >= NewArray[k], 则直接插入并且i加1;否则进一步k-1继续进行比较,直至迭代完所有数据
插入排序

合并排序

合并排序,又称为归并排序,是应用‘分治法’思想的典型方式。
核心思想是将若干个有序子序列进行合并,产生一个有序序列。一般是进行两两合并操作,迭代完成所有合并操作。
第一步对数据[1, 3, 4, 6, 1, 6, 9]进行分割有序单一数组,[1],[3],[4],[6],[1],[6],[9]
第二步,两两合并(升序)。w[i] <=x[j], 条件满足,w[i]写入新的数组r[k]中并且i和k分别加1;否则x[j]值写入新的数组r[k]中并且j和k分别加1,直至遍历完数组
第三步,对合并和有序数组,重复进行第二步操作。直至完成所有数据排序。
合并排序

总结

排序关键在于如何比较。
插入排序:用旧数组数据对新数组数据从后往前(倒插入)进行比较,提高比较效率。
合并排序:关键在于如何合并。两个数组进行比较合并成新的数组更加有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值