
算法
文章平均质量分 50
dou_being
这个作者很懒,什么都没留下…
展开
-
python递归实现逆序输出数字
该问题要求输入任意一个整数,实现它的逆序输出。首先判断输入的整数是正整数还是负整数,如果是负整数, 则在逆序输出前应先打印出负号。逆序输出数字实际是一个数值问题的递归。编程实现将输入的整数逆序输出。原创 2023-08-13 16:11:42 · 5807 阅读 · 0 评论 -
python实现递推算法解决分鱼问题
A、B、C、D、E5个人合伙夜间捕鱼,凌晨时都已经疲惫不堪,于是各自在河边的树丛中找地方睡着了。B第二个醒来,但不知道A已经拿走了一份鱼,于是他将剩下的鱼平分为5份,扔掉多余的一条,然后只拿走了自己的一份;假设E分鱼前鱼的总数为6条、11条、16条……每个人分鱼前,鱼的总数%5都必须为1,且B、C、D、E分鱼前鱼的总数%4必须为0,即每次剩余的鱼必须能够均分成4份。定义数组fish[6]来保存每个人分鱼前鱼的总条数,A、B、C、D、E分鱼前鱼的总条数分别存放在fish数组下标为1、2、3、4、5的元素中。原创 2023-07-30 15:41:43 · 3814 阅读 · 0 评论 -
python实现猴子吃桃算法
一个猴子摘了一些桃子,它第一天吃掉了其中的一半然后再多吃了一个,第二天照此方法又吃掉了剩下桃子的一半加一个,以后每天如此,直到第十天早上,猴子发现只剩下一个桃子了,问猴子第一天总共摘了多少个桃子?可以使用递归函数来实现上述递推关系:假设第n天吃完后剩下的桃子数为A(n), 第n+1天吃完后剩下的桃子数为A(n+1),递推关系为:A(n)=(A(n+1)+1)*2。假设Ai为第i天吃完后剩下的桃子的个数,A0表示第一天共摘下的桃子。根据问题描述,前后相邻两天之间的桃子数的关系为: A=2(A(i+1)+1)原创 2023-04-02 22:28:04 · 2863 阅读 · 0 评论 -
python实现递归算法解决年龄问题
2、要求出第5个人的年龄,则必须先知道第4个人的年龄,显然第4个人的年龄也是未知的, 但可以由第3个人的年龄推算出来。(2)将age(n)=10,n=1转成一个函数,在main()函数中通过调用age(n)函数就可以获知第n个人的年龄 (3)每次调用age()函数时并不会马上获得年龄值,而是不断地进行递归调用,直到调用到age(1)时才有确定的年龄值,然后再从age(1)一步步地递推回去。在调用f1()函数的过程中,f1()又调用了函数f2(), 而在调用函数f2()的过程中,又调用了f1()原创 2023-06-24 16:54:00 · 4250 阅读 · 0 评论 -
使用python实现百钱百鸡问题
使用python实现百钱百鸡问题原创 2023-02-12 15:35:39 · 6465 阅读 · 1 评论 -
快速排序(Python实现)
一、快速排序思想如果要排序数组中下标从 p 到 r 之间的一组数据,我们选择 p 到 r 之间的任意一个数据作为 pivot(分区点)。我们遍历 p 到 r 之间的数据,将小于 pivot 的放到左边,将大于 pivot 的放到右边,将 pivot 放到中间。经过这一步骤之后,数组 p 到 r 之间的数据就被分成了三个部分,前面 p 到 q-1 之间都是小于 pivot 的,中间是 pivot,后面的 q+1 到 r 之间是大于 pivot 的。二、步骤归纳1.排序数组为collection,游原创 2020-09-06 22:44:30 · 316 阅读 · 0 评论 -
快速排序(Java实现)
一、快速排序的思想快排的思想是这样的:如果要排序数组中下标从 p 到 r 之间的一组数据,我们选择 p 到 r 之间的任意一个数据作为 pivot(分区点)。我们遍历 p 到 r 之间的数据,将小于 pivot 的放到左边,将大于 pivot 的放到右边,将 pivot 放到中间。经过这一步骤之后,数组 p 到 r 之间的数据就被分成了三个部分,前面 p 到 q-1 之间都是小于 pivot 的,中间是 pivot,后面的 q+1 到 r 之间是大于 pivot 的。快排是一种原地、不稳定的排序原创 2020-09-06 22:38:22 · 6632 阅读 · 0 评论 -
python实现冒泡排序
冒泡排序算法的原理如下:1.比较相邻的元素,如果第一个比第二个大,就交换他们两个2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对3.针对所有的元素重复以上的步骤,除了最后一个4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较Demo:#!/usr/bin/env python3# -*- coding: utf-8 -*-a =...原创 2020-02-18 17:25:04 · 263 阅读 · 0 评论