【算法思想与数据结构设计】

排序思想掌握

前言:
开发当中为什么会用到算法?或者说为什么需要算法与数据结构等?

  1. 算法思想可以帮助我们优化程序的性能,例如减少时间与空间复杂度,从而使程序更快、更有效地运行。
  2. 在数据分析领域,算法思想可以帮助我们处理大量的 数据,并从中提取有用的信息。例如聚类算法可以将数据点分组,帮组我们发现数据的模式和趋势。
  3. 在人工智能领域,算法思想可以帮助我们构建智能系统,例如机器学习、深度学习等,这些算法可以通过分析大量数据来学习和改进自己的行为。
  4. 在游戏开发中,算法思想可以帮助我们设计和实现游戏逻辑。例如,路径搜索算法可以帮助我们计算最短路径等。

一、排序

  1. 插入排序
for 第一次,除了第一个元素外,作为指针遍历每个元素。
for 第二次,当前元素都会与之前元素相比较,直到找到自己合适的位置,才停止,
	继续第一轮的指针移动。
  1. 希尔排序
希尔排序(Shell Sort)是一种插入排序的改进版本,它通过将待排序的元素分成若干个子序列,
对子序列进行插入排序,最终使整个序列有序。希尔排序的基本思想是先将整个待排序的序列分
 割成若干个子序列,然后分别对各个子序列进行插入排序,最后再对整个序列进行一次插入排序。

选择一个增量序列,通常为n/2,n/4,n/8 ... 1,即将待排序序列分成若干个子序列。
对每个子序列进行插入排序。
不断缩小增量,重复上述步骤,直到增量为1,即对整个序列进行最后一次插入排序。
  1. 归并排序
归并排序是采用分治思想,先将序列分成单个序列,直到每个序列只有一个元素,不断递归地去合并。
适用于外部排序:由于其稳定性和分治思想,归并排序适用于外部排序,适合处理大规模数据。

二、

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值