- 博客(3)
- 收藏
- 关注
原创 Python算法实现:经典排序算法详解
插入排序的时间复杂度在最好情况下是O(n),平均和最坏情况下是O(n^2),因此在数据量较小且部分有序的情况下表现较好。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。它的工作原理是首先在未排序序列中找到最小(或最大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(或最大)元素,然后放到已排序序列的末尾。本文将介绍几种常见的排序算法,并通过Python代码实现。
2024-04-10 12:12:22
568
2
原创 Dp-01背包问题Python版
动态规划是一种在数学、计算机科学和经济学中使用的,通过把原问题分解为相对简单的子问题的方式来求解复杂问题的方法。这种方法往往能大大简化问题的求解过程,提高求解效率。本文将结合01背包问题,详细分析动态规划的原理、应用和使用步骤。。动态规划:通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题。(通俗的来讲就是 大事化小,小事化无)分析:1.确认状态 2.转移方程 3.初始条件 4.执行顺序。
2024-04-09 15:28:29
1424
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人