算法与数据结构
aliez..
月亮也喜欢我
展开
-
Python实现插入排序
算法思想:给定一个数组l,第一次比较索引0-0上位置的数,第二次比较索引0-1上位置的数,第二次相对第一次,只有索引1是新的数,将索引1的数依次与之前排好序的数比较,如果小于则交换位置def insert_sort(l: list): n = len(l) if n < 2: return l for i in range(n): index = i while index - 1 >= 0 and l[index.原创 2022-04-06 16:53:34 · 854 阅读 · 0 评论 -
Python实现:给定参数N,求连续阶乘
思想:每次求出一个阶乘,使用临时变量保存,留给下一个阶乘使用# 给定参数N,求1!+2!+...N!# 思路:用临时变量保存上一次求出的阶乘def func(n): res = 0 temp = 1 for i in range(1, n + 1): temp *= i res += temp print(temp) return resif __name__ == '__main__': prin.原创 2022-04-06 16:31:00 · 924 阅读 · 0 评论 -
Python实现选择排序
算法思想:选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。...转载 2022-04-06 16:26:59 · 766 阅读 · 0 评论 -
Python实现冒泡排序
算法思想:它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。# 算法思想:前一个元素与后一个元素比较大小,后一个元素较小则交换元素位置def bubble_sort(l: list): .原创 2022-04-05 21:39:49 · 1122 阅读 · 0 评论