- 博客(6)
- 收藏
- 关注
原创 算法 — Python递归实现归并排序
比如说我们有两个子序列(L和R,假设各自三个元素),L第一个元素和R第一个元素比较,如果L[L_p]小就把L[L_p]尾插进( append() )新序列,然后让L_p后移一位,否则就把R[R_p]尾插进新序列。重点是,要先分裂到子序列只有一个元素,才开始合并,所以分裂和合并是分开进行的,分裂为同样的逻辑,且逻辑简单,所以我们可以用递归来进行分裂,用两个变量来接收,然后在下面在进行排序合并操作。就这样依次比较下去,直到有一个子序列的下标变量后移出了子序列的范围,就停止排序的循环,
2023-12-13 20:50:27 447 1
原创 Python的递归在快速排序算法中的应用
2.(顾名思义,我们希望high对应的元素应该大于基准元素) 所以让high开始左移,,那么递归开始返回的地方是排序函数输入的头(first)和尾(last)相等时就返回。这样就把基准元素成功按从小到大的顺序直接插到了列表中正确的位置。3.(同理,我们应该让low对应的元素都小于基准元素) 替换完了以后,,没遇到大于基准元素的情况就让low一直右移,同样的逻辑操作,所以我们用到了。赋予一个变量(mid),然后。1.快速排序的思想是。
2023-12-12 23:34:12 397
原创 Python找出整数1、2、3、4能组成多少个各位互不相同且不重合的三位数,并输出这些三位数,非三重循环的方法
print(f'总共能组成{b}个三位数')
2023-12-08 21:13:08 859
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人